【问题标题】:jQuery content replacement within content replacement not working in IE7内容替换中的 jQuery 内容替换在 IE7 中不起作用
【发布时间】:2011-12-05 21:23:06
【问题描述】:

我正在使用 .html() 在带有选项卡式导航的网站上进行一些相对简单的内容替换。但是,我遇到了一个问题,即在本身已被替换的内容中,单独的内容替换不起作用。

我在这里设置了一个测试。在 IE7 中,如果您单击“它的工作原理”选项卡,然后单击底部的小圆圈,图像和相关的引用文本就会消失。当然,这在其他浏览器中也可以正常工作。

http://stage.slappotown.com/

您可以在页面顶部看到控制所有这些的 js。但是,我不得不将实际调用函数以替换正文中的引号的 javascript 放在底部。这可能是问题的一部分,但由于某种原因,当我尝试输入该代码时:

jQuery('.quotePicker li a').click(function () {
setQuote(this);
return false;
})

在头部作为 .ready 函数的一部分,那么它根本不起作用。任何帮助将不胜感激。

JS 小提琴在这里: http://jsfiddle.net/maFKQ/4/

我尝试将 setQuote 函数的点击处理程序移动到头部,但是当我这样做时它似乎根本不起作用。

【问题讨论】:

  • 我们能看到 setQuote 的代码吗?
  • @maxedison function setQuote(f) { var a = jQuery(f).attr('href'); jQuery('.quoteContainer').html(jQuery(a).html()); jQuery(f).parent().addClass('current'); jQuery('.quotePicker li').not(jQuery(f).parent()).removeClass('current'); }
  • 所有代码都在他贴的链接里。我已经在 jsfiddle 中对其进行了测试,它在 IE8 兼容模式(某种 IE7 模式)下进行了复制。
  • 在IE7中设置断点,点击选择器似乎并没有真正触发setQuote函数,即使选择器是正确的。 jQuery('.quotePicker li a').click(function () { setQuote(this); return false; });

标签: jquery


【解决方案1】:

请参考这里关于在 IE 中使用 addclass 和 remove class。我发现自己那里有点问题(在这种情况下,它是 IE8 严格模式,但永远不知道......)

IE8 v8 not changing class for a DOM element despite JS function changing the element attribute

【讨论】:

    猜你喜欢
    • 2014-11-01
    • 2011-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-20
    • 1970-01-01
    • 2017-10-04
    相关资源
    最近更新 更多