如何測試以查看事件處理程序是否綁定到使用JSUnit的節點?使用JSUnit測試綁定事件?
這是我有:
var mynode = document.getElementById("mynode");
assertNotNull(mynode);
MyLibrary.attachEvent(mynode, "click", function(){ return true; });
assertEquals(typeof mynode.onclick, typeof function(){ return true; });
但mynode.onclick的類型,當然,對象;而函數的類型是...而且是一個函數。
如果我只是嘗試assertEquals(mynode.onclick, function(){ return true; });
斷言也失敗。
有什麼建議嗎?
如果在使用addEventListener或attachEvent(IE)設置的事件上調用.toString(),則會出現錯誤。在附加事件之前或之後未定義mynode.onclick。如果你打印出來,你可以看到它是一個空對象。 – KeatsKelleher 2011-03-17 14:55:19
啊,好的,我不知道'MyLibrary.attachEvent'是如何工作的。 – rdamborsky 2011-03-17 15:12:29
MyLibrary.attachEvent()測試它是否應該使用attachEvent()(用於IE)或addEventListener(用於其他所有內容)。然後它執行附件。 – KeatsKelleher 2011-03-17 15:17:27