zoukankan      html  css  js  c++  java
  • 发现并认为这是jQuery1.4.4的一个Bug

    说起来还觉得丢人,公司的系统开发了两年,目前jquery的版本还是用的1.4.4。

    mantis上的Bug一堆,今天在改bug的时候发现一个jQuery的Bug。

    改bug嘛,一开始总是各种调试,总感觉怪怪的。经过各种分析和猜想后,最后问题归结到jquery.data函数。于是做了个实验。
    先写了一个简单的页面:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    
    <html>
    
    <head>
    
        <script type="text/javascript" src="jquery-1.4.4.min.js"></script>
    
        <script type="text/javascript">
    
        $(function(){
    
            $("#box").text("hello jquery");
    
        });
    
        </script>
    
    </head>
    
    <body>
    
        <div id="box"></div>
    
    </body>
    
    </html>

    接着我在控制台执行:

    结果却返回了一个function。
    但执行:

    返回undefined。

    然后又是各种猜想和测试,发现执行jquery的内部函数名称的参数时,这些内部函数名都会返回函数体。

    $.data($("abc"),"css")
    $.data($("abc"),"data")
    $.data($("abc"),"text")

    我觉得这是个jQuery1.4.4的bug。所以我又试了下最新版本的jQuery1.10.2 。
    在最新版本下,返回的就都是undefined了。即我所认为的正常返回结果。

    接着我建议升级jQuery的版本,但经理说,升级会有风险,因为有些接口在高版本里用法改掉了。
    没办法,确实有这问题。但早干嘛了。目前只能先尽量避免使用这些特殊的名称了。1.4.4应该还存有很多Bug。这次只需要改掉几个命名就行了。但下次还不知道有怎样的奇葩问题。

  • 相关阅读:
    python中自定义模块导入
    EditText------Android
    Fragment类实现
    Android文件访问
    python中pip使用国内镜像提高安装速度
    esri/geometry包 (arcgis api for js)
    【CSDN 编辑器 MarkDowm 使用技巧】
    for 循环 :从指定下标开始,并指定步长
    【车牌识别】-车牌中字符分割代码详解
    【 Linux 常用命令】
  • 原文地址:https://www.cnblogs.com/shijiaqi1066/p/3441510.html
Copyright © 2011-2022 走看看