1.attachEvent
<body>
<button name="test2">test2</button>
</body>
<javascript>
function attClick()//handler of click event
{
//process click event
}
test2.attachEvent("onclick",attClick);
</javascript>
推荐来源:
javascript事件监听, http://www.cnblogs.com/AganCN/archive/2008/05/24/1206272.html
JavaScript 事件监听绑定,http://www.codecto.com/2011/02/javascript-add-event-listener/
2.thow Error与try/catch/finally
try
{
throw new Error("aa");
}
catch(e)
{
alert("error aa");
}
3.javascript的事件冒泡
IE冒泡型事件的基本思想是: 事件按照从最特定的事件目标到最不特定的事件目标(document对象)的顺序触发.
因为在JavaScript中,mousedown、mouseup、click执行顺序是从左到右的,更重要的是一旦mousedown事件激活,正常情况(不在mousedown事件中绑定的方法使用alert类似方法,因为弹出对象框就阻止了事件传递,即后续调用事件丢失)下后面两个事件也肯定会被激活。平时我们在一个标签上只绑定一个click事件,其实触发click事件也都调用了mousedown、mouseup等事件,只是它们调用周期极短,而且我们又没有编写相关函数与这两个事件绑定,所以不会觉察到。
推荐来源:
JavaScript事件冒泡和事件委托
http://www.pureweber.com/article/event-delegation/
4.javascript与web service.
因为web service可以通过http访问,所以,可以在javascript中调用web service.
例如, 在ScriptManager里注册web service.
<asp:ScriptManager ID="ScriptManager1" runat="server">
<Services>
<asp:ServiceReference Path="../WebService/WebServiceBatchUploadBO.asmx" />
</Services>
</asp:ScriptManager>
然后点按钮执行ajaxCall方法,执行异步的web service调用:
function ajaxCall()
{
document.getElementById("BatchUploadExcel").StartToReadFromExcel(); //这是activex控件
var data = document.getElementById("BatchUploadExcel").BatchBOXml;
if (data != "0") {
oSPAN.innerHTML = "请稍候...";
WebServiceBatchUploadData.BatchUploadTestFromXml(data, onSayHelloSucceeded);
}
}
}
function onSayHelloSucceeded(result) {
alert(result);
}
5.javascript和ajax神奇的互相操作
6.jQuery.