zoukankan      html  css  js  c++  java
  • 函数语法

    练习1:eval()
    eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
    console.log("2+2")    //2+2
    console.log(eval("2+2")) //4
    var a="var b={x:1}";
    eval(a)
    console.log(b.x)      //1

    结果: aa is not defined
    var fn = function aa(){return 1+2}
    console.log(aa())

    应用场合1:
    结果:3
    var fn = "function aa(){return 1+2}"
    eval(fn)
    console.log(aa())
    应用场合2:
    如后台传:echo:"{x:1,y:2}"
    返回:String
    eval()后返Object
     

    删除属性delete

    
    
    绑定方式中:
    html   <div on事件名="函数(this)">   不便于维护,不符合内容与行为分离的要求

    取消事件默认行为
    取消事件默认行为:e.preventDefault()
    情况一:可以阻止点击出现#在地址栏中
    <a id="keys" href="#">click me!</a>
    okeys.onclick=function(e){
    e.preventDefault();    //可以阻止点击出现#在地址栏中
    }
    情况二:表单onsubmit事件中,进行最后一次完整验证,未通过,取消提交
    form.onsubmit=function(e){
    var r = userName.onblur()&&password.onblur();
    if(!r){
    var e =window.event|| arguments[0];
    if(e.preventDefault){
    e.preventDefault();
    }else {
    e.returnValue=false;
    }
    }
    }
    情况三:H5拖住效果,取消默认行为
    
    
    封装Javascript中 $
    window.$=HTMLElement.prototype.$=function(selector){
    return (this==window?document:this).querySelectorAll(selector);
    }

    nodeType  1元素节点,2属性节点,3文本节点

     ---------------------------------------------------------------------

    事件坐标:事件发生时,鼠标的位置
    相对于屏幕左上角:e.screenX | screenY
    相对于文档显示区左上角:e.clientX | e.clientY
    相对于事件绑定的元素:e.offsetX | e.offsetY
    事件坐标:3种坐标系
    1. 相对于显示器:
    最大值: screen.availHeight/availWidth
    鼠标位置: e.screenX/Y
    2. 相对于文档显示区
    最大值:window.innerHeight/Width
    鼠标位置:e.clientX/x; e.clientY/y
    3. 相对于父元素左上角
    最大值:父元素的宽和高
    鼠标位置:e.offsetX/Y

      ---------------------------------------------------------------------

     

    jquery中的,$.each

    $.each()是对数组,json和dom结构等的遍历,

    var arr= [11,22,33,44,55]
    $.each(arr,function(i,item) { //两个参数,第一个参数表示下标,第二个参数表示一维数组中的每一个数组
    i //索引值
    item //数组值
    })

    var e =window.event|| arguments[0];

    var target = e.target || e.srcElement;

          if(e.preventDefault){
    e.preventDefault();
    }else {
    e.returnValue=false;
    }
    --------------------------------------------------------------------------------------------------------
    代码加载问题,在函数自调中找不到函数:
     

     html代码

    <script src="carousel.js"></script>
    <script>
        carousel('#c1',300,180)
    </script>
    由于先加载carousel.js文件,所以carousel("#c1",300,180)运行下边代码出错

    Uncaught ReferenceError: carousel is not defined
    (function(){
        function carousel(selector){
            alert(selector)
        }
    })()
    解决:函数自调中window.carousel设置成全局
    carousel.js 代码
    (function(){
        window.carousel =function(selector){
            alert(selector)
        }
    })()

     

    html与javascript表示方法:

    $([子节点],[父节点])

    html 结构如下:
    <div id="c1" >
        <div class="carousel-wrap"></div>
    </div>

    javascript 可这样表示:

    $('.carousel-wrap','#c1');
    -------------------------------------------------------------------------------------------------------

    js获取浏览器可视区域的宽度

    //浏览器可视区宽高,提前要加<!DOCTYPE html>
    var iWinWidth = document.documentElement.clientWidth;
    var iWinHeight = document.documentElement.clientHeight;

    垂直方向滚动条的高度 
    iScrollTop = document.documentElement.scrollTop ||document.body.scrollTop chrome支持
     
     
     
    -------------------------------------------------------------------------------------------------------
    getComputedStyle
    var computedStyle = getComputedStyle(myDiv); 
    alert(computedStyle.backgroundColor);
    alert(computedStyle.width);
    oaa.style.left:一般是行内left,取不到内部样式如.style{left:0}这种形式
    oaa.offsetLeft:相对当前定位元素left

    -------------------------------------------------------------------------------------------------------

    getAttributeNode() 方法从当前元素中通过名称获取属性节点。
       var oh1 = document.getElementById("a");
       alert(oh1.getAttributeNode("id").nodeType);//2




  • 相关阅读:
    随笔一篇
    WPF SDK研究 Intro(2) QuickStart2
    WPF SDK研究 Intro(1) QuickStart1
    两道MS的面试题 及答案
    关于父子类方法的继承
    WCF笔记 1.WCF基础
    Vista下建立WCF遇到的问题及解决方案
    WPF SDK研究 目录
    WPF SDK研究 Printing (1) PrintDialog
    WPF SDK研究 Printing (2) EnumerateSubsetOfPrintQueues
  • 原文地址:https://www.cnblogs.com/liubingyjui/p/10148201.html
Copyright © 2011-2022 走看看