zoukankan      html  css  js  c++  java
  • zepto.js

    Zepto是一个轻量级的针对现代高级浏览器的JavaScript库, 它与jquery有着类似的api。 如果你会用jquery,那么你也会用zepto。 设计的目的是提供jquery的类似的APIs,但并不是100%覆盖jquery为目的。zepto设计的目的是有一个5-10k的通用库、下载并执行快、有一个熟悉通用的API,所以你能把你主要的精力放到应用开发上。用一个script标签引入Zepto到你的页面的底部:

           
                ...
        </body>
        <script src=zepto.min.js></script>
        </html>                 
            
        

    如果你需要兼容ie浏览器,你可以用回jquery。 需要注意ie10以后不再支持条件注释(为了提高与HTML5 的可互操作性和兼容性,Internet Explorer 10 标准模式和Quirks 模式中删除了对条件注释的支持),因此,我们建议以下的document.write方法:

    
                
                    <script>
    // document.write方式创建script, 移动端或现代浏览器用zepto, 旧浏览器用jquery
     document.write('<script src=' + ('__proto__' in {} ? 'zepto' : 'jquery') + '.js></script>');
    </script>
                
            

    附:每一个引用类型的实例中,都有一个指针,指向其原型对象。这个指针在非IE浏览器里通过__proto__表示,而在IE里不提供。看如下代码:

    
    obj = {};
    obj.__proto__.toString = function() { return "hello"; }
    test = {};
    alert(test);  //输出结果就是hello。
                

    原因在于JavaScript中只有一个Object原型对象,第二行,修改了这个原型对象的toString成员变量,而Object原型对象是所有引用类型实例共享的,只有一个,所以其他对象调用toString()也就发生了变化。IE不提供这个__proto__,使得程序员无法获取到Object原型对象,也就无法修改这个老祖宗的属性了。这样做就更安全了。因为__proto__不是标准方法,标准的方法是Object.getPrototypeOf();可以Object.getPrototypeOf(obj)。

    注:两个下划线,后跟五个字符”proto”,最后又是两个下划线.当一个对象被创建时,它的 __proto__ 属性和内部属性[[Prototype]]指向了相同的对象 (也就是它的构造函数的prototype属性).改变__proto__ 属性的值同时也会改变内部属性[[Prototype]]的值,除非该对象是不可扩展的.可以通过这个属性验证是否是IE

    
         var noIe = ('__proto__' in {});  
        alert(noIe);  
        //或者  
        if('__proto__' in {}){非ie}  
        else{ie}  
                
  • 相关阅读:
    转: winform间的传值并linklabel动态窗口跳转
    app.config配置
    RSS2.0中文规范
    windows forms 窗口跳转
    C#对DataGridView进行添加、修改、删除数据操作
    小小一颗心
    小记上海一天
    又一个婉约的日子
    七夕节
    我的实习
  • 原文地址:https://www.cnblogs.com/wwkk/p/6490208.html
Copyright © 2011-2022 走看看