Jquery在ie6中没有工作

时间:2009-10-27 12:00:13

标签: jquery internet-explorer-6

我非常坚持这个

它在firefox,chrome,safari,ie8(几乎)中运行良好。

但是在ie6:

  • 无鼠标交互工作;添加了类似 - $("#watch_but_link").mouseup$("#watch_but_link").mouseover

  • 某些css函数不起作用;添加了类似 - $("#listen_tab").css("background-position","0px 0px");

有一整套xml解析和显示似乎正在解决的问题。

我尝试过执行脚本和页面底部以及底部有$(document).ready(我读过这可能有帮助)。但它没有。

页面在这里,它是收音机,电视部分下方顶部导航的一部分: http://www.abc.net.au/triplej/default_nowplaying.htm

这里的脚本:/triplej/scripts/triplej.listen.watch.js

欢迎任何想法

谢谢!

3 个答案:

答案 0 :(得分:1)

如果您将type="text/javascript"添加到相应的<script>代码,问题是否仍然存在?

对于CSS函数,请尝试对它们进行分解,使它们不使用多值属性。不是将background-position设置为0px 0px,而是将background-position-topbackground-position-left都设置为0px。另外请记住,IE6对CSS的支持较少(与更多现代浏览器相比),因此您可能想要检查是否可以通过常规CSS规则成功设置未通过jQuery设置的其他属性

答案 1 :(得分:0)

您可能还想检查程序逻辑,并确保正确设置buttonsActive。使用实际的布尔值true和false而不是字符串“true”和“false”可能是个好主意。除了CSS支持不佳之外,IE6在评估Javascript表达式方面肯定也有错误或至少存在差异。避免不太可能但语法上有效的表达式是确保一致评估的一个好的经验法则。

我还有更多运气将数据结构传递给css()而不是字符串。例如:

    $("#watch_tab").css( { "background-position-top":  "0px",
                           "background-position-left": "0px",
                       } );
    $("#watch_but").css( { "background-image": "" } );

我不能说我已经隔离了这个语法修复的特定问题,但我和我的开发团队在编写了大量的jQuery代码并修复了许多浏览器兼容性错误之后已经解决了这个语法。

答案 2 :(得分:0)

感谢您的建议和意见,

事实证明,在整个网站上全局应用的ie png修复与此脚本之间存在冲突,没有它,它可以正常工作。

我确信这里的建议是针对更好的格式化代码而不是全部丢失。

现在只是想弄清楚如何解决这个问题。

再次感谢。