如何控制动态添加到DOM的元素?

时间:2015-11-30 06:00:04

标签: jquery ajax

这对我来说是一个相当严重的问题,因为如果它不仅仅需要使用简单的jquery或ajax代码,我就不知道如何编程。

总结一下我的情况,首先,我首先说我使用的是一个名为XE的CMS,它与wordpress非常相似。 (请参阅链接:https://github.com/xpressengine/xe-core,即使文档不支持英语)

如您所见,以下链接是使用此XE CMS构建的电路板。

http://lifeto.cafe24.com/xe/htmlcss

XE使用自己的$函数来调用文档

例如,这是我上面链接的页面中的代码,单击每篇文章的标题时会打开文章

<a href="{getUrl('document_srl',$document->document_srl, 'listStyle',
 $listStyle, 'cpage','')}"><strong>{$document->getTitle()}</strong></a>

它工作得很好,直到我决定添加这个名为无限滚动js的ajax jquery插件。

http://www.infinite-scroll.com/

因为这个js插件动态地将文章添加到DOM中,正如你可以在我的网站上看到的那样,当我点击缩略图时,其他文章 - 除了第一篇文章之外 - 都没有打开。 (它可能会打开图层本身,但它不提供CMS提供的确切文档地址 - 请注意,如果您单击“3”项,它仍会在div上显示“4”项目)

下面是我使用的脚本:打开包含文章的图层,关闭图层,以及将内容(文章)加载到打开的图层中。

jQuery('body').on('click', '.list_content_link', function() {
        jQuery('.list_content_container').toggleClass('show');


 jQuery.post('{getUrl('document_srl',$document->document_srl, 'listStyle', $listStyle, 'cpage','')}', function(pageContent) {

        jQuery(".loader_container").empty().html('<div class="loader"><div class="loader-inner line-scale-pulse-out-rapid"><div></div><div></div><div></div><div></div></div></div>');

    jQuery('.list_content').load('{getUrl('document_srl',$document->document_srl, 'listStyle', $listStyle, 'cpage','')} .board_container');
    });        
});

    jQuery('body').on('click', '.list_content_container', function() { jQuery('.list_content_container').removeClass('show');

});
});`

我已经向这个CMS的开发人员提出了这个问题,但他说的只是,它必须由

完成。

jQuery.post或jQuery.load只使用JS, 不使用php或XE特定代码,因为'getUrl(... $ document-&gt; document_srl ...)'在服务器中被解释,客户端无法提供任何信息。

任何人都能看到我遇到的问题吗?

如果您要求提供任何信息,我可以让您一劳永逸地解决这个问题。 我很感激你的帮助。感谢。

1 个答案:

答案 0 :(得分:0)

使用&#39;文件&#39;身体&#39; jQuery(documnet).on(&#39;事件名称&#39;,&#39; .list_content_link&#39;,function()