所以我在bigcartel上创建一个商店,我想添加一个免费送货选项。但是他们目前不允许你把它添加到特定的国家。我目前正在添加编码,以显示div或在用户总数超过85英镑时提醒用户,并选择英国作为他们的设计。
ATM我认为我的代码不会循环..好吧它似乎没有:/ 我需要它循环,以便它在客户添加或减去项目时检查总价格的价值。这将是+或 - 总金额。
我有
var amount = {{ cart.total }} ;
var country = {{ store.country | country_select }};
t=setTimeout("checkprice()",10);
function checkprice()
{
if(amount >= 85 || country = 45 )
{
alert('OVER 85!') ;
}
else
{
alert('monkeys')
}
}
根据@kolink的建议:我已经提出了这个,,,
//----get variables--
var amount = {{ cart.total }};
var moose = document.getElementById("country");
function freedel()
{
if (moose = 42 || amount >= 85 )
{
document.getElementById("moose").style.visibility='visible';
}
else
{
alert('WRONG!')
}
}
HTML是:
<div id="moose" style="visibility:hidden;"> dfgsdgfdsg</div>
和
<h3 id="cart_price" onChange="freedel()">{{ cart.total | money_with_sign }}</h3>
答案 0 :(得分:1)
你告诉它在页面加载后10毫秒检查价格,然后你永远不会告诉它再次运行。
如果您的代码有效,它会显示警报,然后再显示10毫秒(这时间还不足以解决问题)。
除了更新checkprice();
或cart.total
之外,您应该在代码中添加store.country
。也许onChange
事件可以帮助你。
作为旁注,永远不要在setTimeout
中使用字符串。传递函数本身(即。setTimeout(checkprice,10);
)或匿名函数(是。setTimeout(function() {checkprice();},10);
。