jQuery Pagination Wordpress 小部件后 Dom Css 丢失
Posted
技术标签:
【中文标题】jQuery Pagination Wordpress 小部件后 Dom Css 丢失【英文标题】:Dom Css lost after jQuery Pagination Wordpress widget 【发布时间】:2012-06-17 18:18:01 【问题描述】:我为 Wordpress 开发了一个小部件来显示投资组合,用户可以选择是否需要分页、过滤类别、每页帖子的数量……等等,它与我拥有的 php 分页系统完美配合制作。
我正在尝试在小部件中为此分页实现一个 ajax jquery,以使其重新加载而无需重新加载整个页面。我有这个代码:
jQuery('.paginate a').live('click', function(e)
e.preventDefault();
var link = jQuery(this).attr('href');
jQuery('.widget_gantry_portfolio').html('<div class="loading"></div>');
jQuery('.widget_gantry_portfolio').load(link+' .widget_gantry_portfolio .portfolio_class');
分页在 php 中完美运行,当我实现此代码时,分页可以工作,但是当单击小部件时会丢失所有用户首选项(显示过滤器、显示分页..等),div 也会丢失其计算出的百分比宽度和高度最初出现在 css 中(见于 firebug):
element.stylewidth and height
我已经在这个问题上待了几天,并且已经证明而不是 live、on 和 delegate 等等,但是它们都不起作用,这个 ajax 分页在我的帖子分页中也很完美网站,但小部件不会重新加载 Dom 元素?
对我来说最重要的是:
-每个缺少宽度和高度的元素,在 DOM css 中,首先这个宽度是用 functions.php enqued 脚本计算的,例如当它有 4 列时:
var mysizes = function()
theWidth4 = jQuery(".mosaic-block4c img").css('width');
jQuery(".mosaic-block4c").css('width', theWidth4);
theHeight4 = jQuery(".mosaic-block4c img").css('height');
jQuery(".mosaic-block4c").css('height', theHeight4);
我调用 mysizes();带有标签的小部件 php 中的函数
-我认为缺少类别的过滤器是因为,当分页加载时,无法识别用户预设的小部件。它在第一页中完美识别,但在后续页面中没有。
链接到投资组合小部件分页无法正常工作的网站(请点击 2 页查看):
http://framecero.com/aagantrywordpress/?page_id=635
链接到具有相同分页功能的示例类别(页面底部的分页):
http://framecero.com/aagantrywordpress/?cat=4
【问题讨论】:
你提到了一个functions.php排队脚本,从ajax调用时是否有可能没有加载? 快速查看表明您至少在更改 HTML 结构。在分页页面上,您有 .portfolio_class 两次嵌套,而原始页面只有一次。 是的! Jure C. 这就是问题所在,我必须使用以下函数:ajaxComplete();重新加载一切。谢谢 @JureC。考虑将解决方案移至答案。 未找到:framecero.com/aagantrywordpress/?cat=4 【参考方案1】:来自Jure C. comment:
快速浏览表明您至少在更改 HTML 结构。在分页页面上,
.portfolio_class
嵌套了两次,而原始页面只有一次。
【讨论】:
以上是关于jQuery Pagination Wordpress 小部件后 Dom Css 丢失的主要内容,如果未能解决你的问题,请参考以下文章
jQuery 分页插件(jQuery.pagination.js)ajax 实现分页
jquery+jquery.pagination+php+ajax 无刷新分页