所以页面以
开头<div id="show-quick-cart-zone"></div>
在页面顶部,我使用了加载命令脚本:
$('#show-quick-cart-zone').load('/loadbalance/quickcart');
然后将一个购物车div框插入页面,如下所示:
<div id="quickcart" class="quickcart" style="display:none">
<div class="quickcarttitle"><span>SHOPPING BAG</span></div>
<strong>Total</strong> £<?=$CartTotal?><br />
<a href="/cart?ref=quick-cart"><img src="secure-checkout.png"></a>
<a onclick="jQuery('#quickcart').slideUp(500);" href="#close-quick-cart"><img src="continue-shopping.png" style="margin-top:8px"></a>
</div>
我使用普通的超级链接来滑动它以显示和关闭。
我想要它,以便如果用户在其URL中有?x = 1查询,则通过在加载后加载它来预先加载该框:
我有以下jQuery函数。它一般应该在页面加载后滑动一个购物车div。
<script type="text/javascript">
<? if($_GET["x"]=="1"){ ?>
function showCart() {
$('#quickcart').slideDown(500);
Cufon.replace('.quickcart');
}
// Toggle the Quick Cart (uses Load Balance for higher TPS no que!)
// showCart();
$(document).ready(function () {
// Code to do stuff immediately
setTimeout(showCart, 0);
});
<? } ?>
</script>
然而,该框没有滑动而没有错误。我想要它,以便如果用户在这样的普通页面上:
/cart/product.php
没有任何反应。
但是,如果他们在/cart/product.php?x=1
该框将默认为slideDown,表示已添加新项目。
答案 0 :(得分:1)
.load
函数需要一些时间才能完成,可能比文档处于正确状态所需的时间更长。所以尝试类似的事情:
$('#show-quick-cart-zone').load('/loadbalance/quickcart', function() {
// this will execute when the ajax load is complete
showCart();
});