页面上的javascript需要处理页面加载。所以我尝试将文档就绪函数添加到代码中。它似乎不起作用。
http://janeucreative.com/daddychallenge/bag.html
<script>$(document).ready(function() {
function addItem(item) {
var itemInCart = item.cloneNode(true);
itemInCart.onclick = function() { removeItem(this); };
var cart = document.getElementById("cart");
cart.appendChild(itemInCart);
}
function removeItem(item) {
var itemInItems = item.cloneNode(true);
itemInItems.onclick = function() { addItem(this); };
var cart = document.getElementById("cart");
cart.removeChild(item);
}
init();
});</script>
任何建议都将不胜感激!我对javascript很新,只是想一步一步地学习它。
答案 0 :(得分:0)
首先,您需要使用更现代版本的jquery:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.js" ></script>
然后,在链接了你正确完成的jquery之后,你可以像这样重写你的代码:
<script>
function init(toAdd, toRemove){
addItem(toAdd);
removeItem(toRemove);
}
function addItem(item) {
var itemInCart = item.cloneNode(true);
itemInCart.on("click",function(){removeItem(this);});
$("#cart").appendChild(itemInCart);
}
function removeItem(item) {
var itemInItems = item.cloneNode(true);
itemInItems.on("click", function(){addItem(this);});
$("#cart").removeChild(item);
}
init($("#myAddedItem"), $("myRemovedItem"));
</script>
这样,你就可以在页面的其他地方使用你的函数addItem和removeItem。您目前似乎已将它们设置为仅从页面初始化运行一次。
我不确定你在使用cloneNode做什么。