函数对已经运行的函数JavaScript的影响
所以我有一个函数,可以显示CSS类中的随机数图像。 问题是,当我运行应用程序两次时,第二个应用程序会更改第一个应用程序上的图像,而随机数不会显示在第二个应用程序中。 我想这可能是因为我没有局部变量,但不管有没有全局变量,我都会遇到同样的问题。我可以使用Iframes,但必须有一个办法才能让它只工作Js 我创建了一个显示问题的JSFIDLE,只需按两次run按钮并玩骰子,您就会看到我的问题。 以及创建类的函数函数对已经运行的函数JavaScript的影响,javascript,Javascript,所以我有一个函数,可以显示CSS类中的随机数图像。 问题是,当我运行应用程序两次时,第二个应用程序会更改第一个应用程序上的图像,而随机数不会显示在第二个应用程序中。 我想这可能是因为我没有局部变量,但不管有没有全局变量,我都会遇到同样的问题。我可以使用Iframes,但必须有一个办法才能让它只工作Js 我创建了一个显示问题的JSFIDLE,只需按两次run按钮并玩骰子,您就会看到我的问题。 以及创建类的函数 function dicesides_func(nr){ // go to d
function dicesides_func(nr){
// go to dice-window-wrapper again
// this could be put in a seporate functon
var elementToAddDice=" dice-window-wrapper ",
obj=this, // using this here that's why it's called wiht
dice,i=0,total=0; // all the dice in this dice window
// dicesides_func.call to set the right this context
if(nr)
{
while((" "+obj.className+" ").indexOf(elementToAddDice)==-1){
obj=obj.parentNode;
}
obj=obj.getElementsByTagName("ul")[2];
var dicessides = createElementWithClass('li',nr);
obj.appendChild(dicessides);
// calculate total (can do in a seporate function)
dice = obj.getElementsByTagName("li");
}
else
{
dice = document.getElementsByClassName("dice");
}
for(i=0;i<dice.length;i++){
total=total+getNumberForClass(dice[i].className);
}
//alert(total);
var wrapper = document.getElementsByClassName("dice-toolbar-counter-wrapper")[0];
while (wrapper.hasChildNodes()) {
wrapper.removeChild(wrapper.lastChild);
}
var ttl = total.toString();
var arr = [];
for (var i = 0;i<ttl.length;i++) {
var digit = ttl[i];
var newelem = createElementWithClass('li',"side-" + ttl[i]);
//alert(dice_toolbar_counter_wrapper_Li)
wrapper.appendChild(newelem);
}
}
这个问题与您之前的问题@Bergi中关于局部变量和全局变量的问题非常相同?实际上我先试过了,但还是有问题:/