2
function Cons(name) {
var pvar1="hi "+name;
sayhi = function() {
alert(pvar1);
}
attEvents(){
$('#'+name).bind("click",sayhi);
}
}
var a = new Cons('name1');
var b = new Cons('name2');
var c = new Cons('name3');
讓我們假設name1,name2,name3都是div。現在,無論我點擊哪個div,我都會收到「hi name3」。無論點擊的div如何,私有變量都有最後存儲的值。任何幫助表示讚賞。通過javascript中的私有方法訪問私有變量
感謝
可能是因爲'sayhi'是全球性的,'.bind(「click」,sayhi);'在創建三個對象後的某個時間被調用。但是要確定地知道,你必須糾正/澄清這個聲明:'attEvents(){$('#'+ name).bind(「click」,sayhi);}'它在做什麼? – 2012-03-20 10:42:15
我的錯誤,attEvents只會將事件附加到div。它將在Cons()的末尾被調用。是的sayhi在全球範圍內。謝謝您的幫助。即使定義了函數,也不知道應該使用var。非常感謝 :) – 2012-03-20 11:02:47