jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了为什么jQuery在加载某些内容时会丢失“事件”(点击)?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
当我在侧边栏上选择页面时,我正在尝试使用下一个脚本加载内容.这个脚本没有问题:

if(Modernizr.history) {     
    var newHash      = "",$wrapperTag = $("#main-content"),contentTag = '#main-content-inside',activeClass = 'active';

    $("#sidebar").delegate("a","click",function() {
        _link = $(this).attr("href");
        history.pushState(null,null,_link);

        loadContent(_link);
        return false;
    });

    function loadContent(href){

        $wrapperTag
                .find(contentTag)
                $wrapperTag.load(href + " "+contentTag+" ",function(response,status,xhr) {

                        $("#sidebar a").removeClass(activeClass);
                        $('#sidebar a[href$="'+href+'"]').addClass(activeClass);

                        $("#menu").bind('click',function(){
                            $(this).showSidebar();
                        });

                    });

    }

这个脚本没有probs,我的HTML模板看起来像这样

HTML模板

<div id="sidebar">
    <nav>
        <ul class="ul-vert">
            <li><a href="page1.html">Page 1</a></li>
            <li><a href="page2.html">Page 2</a></li>
            ...
            <li><a href="pageN.html">Page N</a></li>
        </ul>
    </nav>
 </div>

 <div id="main-content">
     <div id="main-content-inside">
         <p id="menu">Show / Hide Sidebar</p>
        <div class="text desc">(Content)</div>  
     </div>
 </div>

我有一个标签,它是p#menu作为显示或隐藏侧边栏的选项.这工作直到我加载任何页面然后我失去了点击事件.

基本上我的问题是:

更改内容后为什么jQuery会丢失事件?
我可以再次在loadContent函数上再次添加p#menu,但我想了解jQuery的工作原理.

谢谢!

解决方法

$('.fatherDiv').on('click','.childDiv',{},function(E){
 //insert your code here
})

这将不仅在现在,而且在将来将绑定后的事件处理程序绑定到DOM选择器元素(选择器添加到DOM).现在即使特定的选择器被添加或替换为新的DOM元素,也会触发click事件.

阅读此处了解更多信息:
http://blog.revathskumar.com/2013/10/jquery-on-avoid-losing-event-binding-for-ajaxed-contents.html

大佬总结

以上是大佬教程为你收集整理的为什么jQuery在加载某些内容时会丢失“事件”(点击)?全部内容,希望文章能够帮你解决为什么jQuery在加载某些内容时会丢失“事件”(点击)?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。