代码之家  ›  专栏  ›  技术社区  ›  Lil'Monkey

在我的ASP CMS中找不到此错误的原因

  •  4
  • Lil'Monkey  · 技术社区  · 15 年前

    我刚刚找到了一个解决我所见过的最奇怪的bug的方法,我还在努力寻找原因…

    我有一个经典ASP中的旧CMS。在编辑器页面中有一个javascript更改图像属性:

    function removeimg(objimg){
        objimg.onclick = "";
        objimg.src = "/Logiciel/_Altitude_image/interface/Gestion_acces/spacer.gif";
        objimg.width = 16;
        objimg.style.cursor = "arrow";
    }
    

    我的一个使用IE6的客户告诉我,当她用英语保存内容时,它用法语覆盖了她的内容,但语言是在一个经典的ASP会话中保存的,所以我开始调查这个bug(我的200个其他客户中没有一个遇到这种问题),所以在反复测试之后,将response.end放在代码和response中。e.写下我的会话,找出它的变化点,我发现它在javascript本身中。

    这是我无法解释的部分…我不得不 objimg.style.cursor = "arrow" ;在评论中,首先意识到一旦该行出现,我的ASP会话就不再有问题了。

    然后经过几次测试,我改变了 objimg.style.cursor = "arrow"; objimg.style.cursor = "pointer"; 而且效果很好。我想知道以前是否有人遇到过这种问题,是否有人可以向我解释更改光标会如何影响我的服务器端经典ASP会话

    谢谢您。

    1 回复  |  直到 13 年前
        1
  •  6
  •   NickFitz    15 年前

    这是IE中的一个错误:当它 发现 给定的值无效,例如 arrow 为了 cursor 属性被脚本(虽然不是在css中)错误地视为 url(arrow) 并尝试获取它认为应该显示的名为“arrow”的图像文件。这个额外的HTTP请求将发送任何与它所来自的页面相关联的cookie。cookie将包括ASP会话标识符cookie,并且可能这个意外的、无序的请求以某种方式影响了与会话相关的代码。

    (顺便说一下,如果光标应该是普通的箭头光标,正确的值是 default ; pointer 与悬停在链接上相关联的光标。但也许这就是最初想要的。)