在Safari 4.0上,打印「????」如果HID === 「#but0_0」
作品:
$("#but0_0").attr("onmousedown",function(){alert("Aha!");});
不起作用:
var id = "but"+y+"_"+x;
var hid = "#"+id;
if (hid === "#but0_0") console.debug("????");
$(hid).attr("onmousedown",function(){alert("Aha!");});
控制檯顯示 「????」所以代碼被擊中和變量是「相同的」(從===字符串比較的角度來看)作爲字符串文字,但顯然jQuery的$()運算符知道的區別?
我有30個div來操縱,我需要在運行時計算div的id。有任何想法嗎?這可能很簡單,就像從「字符串」或某些這樣的JavaScript stupidity中拔出「字符串」一樣。
您的評論如下的伎倆:因爲元素被動態創建我需要使用elem.live(「onmousedown事件」,...) – 2010-02-26 21:22:43
我更新了我的答案,包括了.live事件 – Mark 2010-02-26 21:30:04