【问题标题】:Using jquery to load nivo slider on click inside Div?使用 jquery 在 Div 内单击时加载 nivo 滑块?
【发布时间】:2013-05-21 14:08:45
【问题描述】:

我正在尝试使用 jQuery 在 div 中加载 nivo 滑块:

<a onclick='$("#content").load("slider/slider.html");'>Slider</a>

但这不起作用,如果我使用这个脚本,它可以正常工作:

<script>
$(document).ready( function() {
$("#content").load("slider/slider.html");
});
</script>

知道为什么它在 onclick 上应用时不加载吗?

编辑:这是 jsfiddle,但 onclick 对我根本不起作用:jsfiddle.net/ZNUY6

【问题讨论】:

  • 必须是$(document).ready...中的初始化代码必须在html的include之后
  • 我不认为代码有问题,任何其他 html 加载都很好,只发生在这个特定的滑块上(点击链接时没有出现),还有其他想法吗?
  • 你能分享一下小提琴吗
  • 你错过了结束语
  • 对不起,这是一个粘贴错误,在我的代码上我已经有了结束引号。第一篇文章已编辑

标签: jquery onclick load nivo-slider


【解决方案1】:

你需要像这样加载数据:

<a onclick='javascript:$("#content").load("slider/slider.html");'>Slider</a>

谢谢,希望对你有帮助。

【讨论】:

    【解决方案2】:

    “更多 jQuery”的方法是给你的 a 元素一个类并定位滑块 URL:

    <a class="ajax" href="slider/slider.html">Slider</a>
    

    然后在你的 document.ready 中设置事件处理程序,它会加载内容:

    $(document).ready(function() {
        $('.ajax').click(function() {
            $('#content').load($(this).attr('href'));
            return false;
        });
    });
    

    return false 阻止链接执行其默认行为(即跟随链接)。

    同一个类可以应用于许多链接,并且使用上面的代码,它们会在单击时将其内容(根据它们的href 属性)加载到#content 元素中。

    这样做的一个好处是您为链接提供了正确的 URL href,即使没有 javascript,它仍然可以以某种方式工作,如果内容需要被搜索引擎等索引,这可能很重要。

    【讨论】:

    • 我已经尝试过了,甚至使用 e.preventdefault();但什么也没有出现。还有什么我可以做的吗?基本上我的 index.html 包含这个滑块,所以我必须链接到导航链接上的主 html,但即使我使用 index.html 作为链接它也不起作用。
    【解决方案3】:

    我使用了不同的滑块,现在它可以工作了,所以我想存在一些兼容性问题或代码问题,在使用此方法时不会让 nivo 滑块重新加载。

    【讨论】:

      猜你喜欢
      • 2013-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多