纯 JavaScript 相当于 jQuery click()?
我正在构建一个捕获鼠标点击的小应用程序。 我用 jQuery 编写了原型,但是,由于它是一个专注于速度的小型应用程序,因此嵌入 jQuery 来仅使用一个函数将是一种矫枉过正。
我尝试改编 JavaScriptKit 中的示例:
document.getElementById("alphanumeric").onkeypress=function(e){
//blah..blah..blah..
}
但当我尝试时它不起作用这:
document.getElementsByTagName("x").onclick
我做错了什么?
I am building a small app which captures mouse clicks. I wrote the prototype in jQuery but, since it is a small app focusing on speed, embedding jQuery to use just one function would be an overkill.
I tried to adapt this example from JavaScriptKit:
document.getElementById("alphanumeric").onkeypress=function(e){
//blah..blah..blah..
}
but it didn't work when I tried this:
document.getElementsByTagName("x").onclick
What am I doing wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
假设您有一个 p 标签列表,您希望捕获
标签的点击:
请查看此处的示例以更清楚地了解:
http://jsbin.com/onaci/
Say you have a list of p tags you would like to capture the click for the
<p>
tag:Check out an example here for more clarity:
http://jsbin.com/onaci/
在您的示例中,您使用
getElementsByTagName()
方法,它返回 DOM 元素的数组。 您可以迭代该数组并将
onclick
处理程序分配给每个元素,例如:In your example you are using
getElementsByTagName()
method, which returns you an array of DOM elements. You could iterate that array and assign theonclick
handler to each element, for example:看起来你错过的不仅仅是 jQuery 的点击功能。 您还会怀念 jquery 的选择器引擎、链接和跨对象集合的自动迭代。 只要付出更多的努力,您也可以最小限度地重现其中的一些内容。
我还没有测试过这些代码,但从理论上讲,它会给你带来这样的结果:
希望这能让你了解 jquery 在幕后所做的事情。
it looks a little bit like you miss more than just the click function of jQuery. You also miss jquery's selector engine, chaining, and automatic iteration across collections of objects. With a bit more effort you can minimally reproduce some of those things as well.
I haven't tested the code, but in theory, it gets you something like this:
Hopefully this gives you a sense of the sorts of things jquery is doing under the covers.
返回具有标记名“x”的元素数组。
您必须为返回数组中的每个元素设置正确的事件。
returns an array of elements having the tagname 'x'.
You have to right event for each element in the returned array.