我第一次使用揭示模块模式并逐渐掌握它。
在我的HTML中我有这样的东西:
<a href='#' onclick='myApp.doStuff'>Click here</a>
在javascript中我有:
var myApp = (function () {
var doStuff = function() {
//Get clicked element and modify it with jQuery?
}
return {
doStuff: doStuff
}
})();
如何在上面指出的位置获得点击的元素?
答案 0 :(得分:3)
你可以使用jQuery方法,比如alex23说的。
但你也可以写html:
<a href='#' onclick='myApp.doStuff(this)'>Click here</a>
这适用于您的javascript:
var myApp = (function () {
var doStuff = function(elem) {
//use the element here
}
return {
doStuff: doStuff
}
})();
更新
如果您也想传递事件对象,请将onclick中的调用扩展为:
onclick='myApp.doStuff(this, event)'
和javascript:
...
var doStuff = function(elem, event){
...
}
答案 1 :(得分:1)
使用jQuery事件处理。跨浏览器事件处理在JavaScript中不是一件小事。
说你有:
<a id="someLink" ..etc>Click here</a>
$("#someLink").click(function(event) {
$(this).html("I have been clicked");
});