作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在原型(prototype) JavaScript 中检查按钮是否被点击?
$('activateButton').observe('click', function(event) {
alert(hi);
});
上面的代码不工作。
最佳答案
使用这个按钮:
<button id="mybutton">Click Me</button>
使用这个:
$('mybutton').observe('click', function () {
alert('Hi');
});
经过测试并有效,here .
您可能希望将它封装在 document.observe('dom:loaded', function () { })
东西中,以防止它在您的页面加载之前执行。
另外,只是一个解释:
Prototype 中的单美元符号通过其 id 选择一个元素。 .observe
函数与 jQuery 的 .on
函数非常相似,因为它用于将事件处理程序绑定(bind)到元素。
此外,如果您需要它成为一个永久性的“已点击按钮”之类的东西,试试这个:
$('mybutton').observe('click', function () {
var clicked = true;
window.clicked = clicked;
});
然后,如果你想测试按钮是否被点击,那么你可以这样做:
if (clicked) {
// Button clicked
} else {
// Button not clicked
}
如果您尝试制作一个不希望用户在其中多次点击的表单,这可能会有所帮助。
jQuery怎么实现,仅供引用:
$('#mybutton').on('click', function () {
alert('Hi');
});
请注意,上面提到的 jQuery 代码也可以缩短为:
$('#mybutton').click(function () {
alert('Hi');
});
jQuery 在 Prototype 中更好,因为它将 Prototype 的 $
和 $$
函数的用法组合到一个函数 $
中。这不仅可以通过元素的 id 选择元素,还可以通过其他可能的 css 选择方法。
如何使用纯 JavaScript 实现:
document.getElementById('mybutton').onclick = function () {
alert('Hi');
}
仅供完整引用,以备不时之需。
关于prototypejs - 如何在 JavaScript 中检查按钮是否被点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13523448/
我是一名优秀的程序员,十分优秀!