Javascript jQuery.load()无法加载样式属性
我正试图在一个基于Wordpress的网站上实现无限滚动功能(是的,有很多无限滚动的插件。我已经测试过了,我想有我自己的,因为没有一个可以100%工作)。一般来说,我的实现工作(当然是借助于web上的示例)。基本思想是,当我到达页脚时,jQuery load()调用用于加载下一组帖子 在functions.php中,我添加了以下内容:Javascript jQuery.load()无法加载样式属性,javascript,jquery,html,css,wordpress,Javascript,Jquery,Html,Css,Wordpress,我正试图在一个基于Wordpress的网站上实现无限滚动功能(是的,有很多无限滚动的插件。我已经测试过了,我想有我自己的,因为没有一个可以100%工作)。一般来说,我的实现工作(当然是借助于web上的示例)。基本思想是,当我到达页脚时,jQuery load()调用用于加载下一组帖子 在functions.php中,我添加了以下内容: function include_infinite_scroll_js() { if( !is_singular() ) { wp_enq
function include_infinite_scroll_js() {
if( !is_singular() ) {
wp_enqueue_script( 'my-infinite-scroll', get_template_directory_uri() . '/js/jquery.infinitescroll.js', array('jquery') );
}
}
add_action('wp_enqueue_scripts', 'include_infinite_scroll_js');
jquery.infinitescroll.js来自
因此,从下一页开始,将检索“posts”
,并将其添加到原始页面的“content”
,而不带“style”属性和
,如下图所示:
在图像的左侧,我标记了posts元素以及样式和跨度,在load()的帮助下加载下一页后,这些元素和样式和跨度将从图像的右侧消失
是的,我检查了load()函数执行后样式表是否仍然存在。我使用这段代码来查看
中的所有链接在前后是否相同。是一样的
instance._debug("links after");
var links = window.document.getElementsByTagName('link');
$(links).each(function() {
instance._debug($(this).attr('href'));
});
我无法理解是什么导致加载()后“样式”(和跨度)消失。我希望得到您对此的意见,并感谢您的帮助
谢谢。看起来像是
样式
,您缺少的span
元素通过脚本动态添加到页面中。在这种情况下,您必须找出那些脚本,并在附加帖子后调用它们。还要记住,当功能缺失时,它们很可能根本就没有被添加——除非你以相反的方式工作。如果将一个DOM与另一个DOM进行比较时,功能消失了
,这并不意味着实际DOM与功能本身之间存在相同的关系…@Bright,谢谢。似乎是这样,或者至少有一个jQuery(document).ready(function($){…}函数执行一些活动。从我的add_infinite_scroll_to_footer(),当我点击页脚时,ready()也会被调用。我如何(显式地)调用/调用原始ready()?根据@Bright提供的提示,我查看了文档,文档中说:“在代码依赖于加载的资产的情况下(例如,如果需要图像的维度),应该将代码放在加载事件的处理程序中。”我复制了原始ready()中的代码,使样式再次出现。这表示在加载()之后,有必要重新应用样式。再次感谢。
box.load(desturl + ' ' + opts.itemSelector, undefined, function infscr_ajax_callback(responseText) {
instance._loadcallback(box, responseText, desturl);
});
instance._debug("links after");
var links = window.document.getElementsByTagName('link');
$(links).each(function() {
instance._debug($(this).attr('href'));
});