실습

3804 단어

1. 정수 곱하기 구하기, 비수치 입력 금지




    
    
    
    
    
    
    
     
    

    
    // 
    $(function(){
        // IE11
        if($.browser.msie){
            $("#test").get(0).attachEvent("onpropertychange",function (o){
                alert(o.srcElement.value);
            });
        // IE
        }else{
            $("#test").get(0).addEventListener("input",function(o){
                var checkVal =  o.target.value;
                if(isNaN(checkVal)){
                    o.target.value="";
                }
            },false);
        }      
    }); 
      
    $(function(){              
        $("button").click(function(){   
            var num=$("#test").val();

            function factorial (num){
                if (num==0||num==1){
                    return 1; 
                }
                else if(num>1 && num%1===0){ 
                    return (num * factorial(num - 1)); 
                }
                else{
                    $("input").css({"color":"#ff0000"});
                    $("input").css({"background-color":"#ffb9ac"});
                    return " ";
                } 
            }           
            $("input").val(factorial(num));                 
        });

        $("#test").focus(function() {
            $("input").val(""); 
            $("input").css({"background-color": "white"});
            $("input").css({"color": "black"});  
        }); 
    });
    


    

2. 마우스로 div 블록을 드래그하여 경계를 초과해서는 안 된다

$(document).ready(function(){ var d=$("#drag"); // x ,2 var maxleft=$(window).width()-d.width()-2; // y ,2 var maxtop=$(window).height()-d.height()-2; d.bind("mousedown",function(event){ /* */ var offset_x = $(this)[0].offsetLeft; var offset_y = $(this)[0].offsetTop; /* */ var mouse_x = event.pageX; var mouse_y = event.pageY; $(document).bind("mousemove",function(ev){ /* */ var _x = ev.pageX - mouse_x; var _y = ev.pageY - mouse_y; /* */ var x= (offset_x + _x ); var y= (offset_y + _y ); if(x<0){ var now_x=0+"px"; }else if(x<maxleft){ var now_x =x+ "px"; }else { var now_x =maxleft+ "px"; } if(y<0){ var now_y=0+"px"; }else if(y<maxtop){ var now_y =y+ "px"; }else { var now_y =maxtop+ "px"; } d.css({ top:now_y, left:now_x }); }); }); $(document).bind("mouseup",function(){ $(this).unbind("mousemove"); }); })

좋은 웹페이지 즐겨찾기