我有以下的jQuery代码,调整窗口Load事件的产品格:重新初始化的jQuery之后AJAX
$j(window).load(function(){
// Remove list class if thumbview
if ($j("ul#products-list").hasClass("thumb_view")) {
$j("ul#products-list").removeClass("list") };
// Equalize all thumb heights on switch if list view default
var maxHeight = 0;
$j('ul.thumb_view div.product-container').each(function() { maxHeight = Math.max(maxHeight, $j(this).height()); }).height(maxHeight +8);
// Undo equalized heights for list
$j('ul.list div.product-container').css("height","auto");
});
在我们的过滤产品的方式在网页例如基于价钱。当客户调整价格范围时,AJAX呼叫会照顾产品的实际过滤。但是,jQuery脚本不会再次运行,并且产品网格无法正确加载。我已经做了大量的研究并发现可以解决这个问题的解决方案;使用“m-ajax-after”事件,或者使用jQuery委托函数。
第一种选择将涉及这一段代码:
jQuery(document).bind('m-ajax-after', function (e, selectors, url, action) {
// reinitialize your script
});
我还没有设法得到它的工作。关于这个功能的知识是非常有限的。
在我看来,第二个选项对实际成功有最大的机会,但是我没有能够将它重现为实际工作的代码。很多主题都可以找到,我可以将它与(window).load函数结合起来。什么是正确的方式来做到这一点?
2015-09-15
Badger
+0
为什么不把你目前拥有的代码另一个函数中的窗口加载函数可以在窗口加载时调用,并且AJAX成功? –