我有一些代码,我循环遍历页面上的所有选择框,并将.hover
事件绑定到它们,以便在它们的宽度上做一些麻烦mouse on/off
.
这发生在页面准备就绪并且工作得很好.
我遇到的问题是,我在初始循环后通过Ajax或DOM添加的任何选择框都不会受到事件限制.
我找到了这个插件(jQuery Live Query Plugin),但在我用插件添加另外5k到我的页面之前,我想知道是否有人知道这样做的方法,无论是直接使用jQuery还是通过其他选项.
有没有一种方法有keyup
,keypress
,blur
,和change
事件调用同一个函数在一行或做我必须做的分别呢?
我遇到的问题是我需要使用数据库查找验证一些数据,并且希望确保在任何情况下都不会错过验证,无论是键入还是粘贴到框中.
我有一个页面,其中一些事件监听器附加到输入框和选择框.有没有办法找出哪些事件监听器正在观察特定的DOM节点以及哪些事件?
事件附件使用:
Event.observe
;addEventListener
;element.onclick
.他们似乎在做同样的事情......一个是现代的还是一个旧的?或者它们是否受不同浏览器的支持?
当我自己处理事件(没有框架)时,我总是检查两者并执行两者(如果存在).(我也是return false
,但我觉得这与附加的事件无关node.addEventListener
).
那两个为什么呢?我应该继续检查两者吗?或者实际上有区别吗?
(我知道,很多问题,但它们都是一样的=))
使用jQuery,当我绑定到按键事件时,如何找出按下了哪个键?
$('#searchbox input').bind('keypress', function(e) {});
Run Code Online (Sandbox Code Playgroud)
我想在ENTER按下时触发提交.
[更新]
即使我发现(或者更好:一个)自己回答,似乎还有一些变异的空间;)
有没有之间的差异keyCode
和which
-尤其是如果我只是在寻找ENTER,这永远不会是一个unicode关键?
有些浏览器提供一个属性而其他浏览器提供另一个属性吗?
我需要找到在对象上注册的事件处理程序.
例如:
$("#el").click(function() {...});
$("#el").mouseover(function() {...});
Run Code Online (Sandbox Code Playgroud)
$("#el")
有点击和鼠标悬停注册.
是否有一个函数来找出它,并可能迭代事件处理程序?
如果通过适当的方法在jQuery对象上不可能,那么在纯DOM对象上是否可能?
假设我有一些jQuery代码,它将事件处理程序附加到具有类"myclass"的所有元素.例如:
$(function(){
$(".myclass").click( function() {
// do something
});
});
Run Code Online (Sandbox Code Playgroud)
我的HTML可能如下:
<a class="myclass" href="#">test1</a>
<a class="myclass" href="#">test2</a>
<a class="myclass" href="#">test3</a>
Run Code Online (Sandbox Code Playgroud)
这没有问题.但是,请考虑是否在将来某个时间将"myclass"元素写入页面.
例如:
<a id="anchor1" href="#">create link dynamically</a>
<script type="text/javascript">
$(function(){
$("#anchor1").click( function() {
$("#anchor1").append('<a class="myclass" href="#">test4</a>');
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,当用户点击#anchor1时会创建"test4"链接.
"test4"链接没有与之关联的click()处理程序,即使它具有class ="myclass".
知道如何解决这个问题吗?
基本上,我想编写一次click()处理程序,并将其应用于页面加载时出现的内容和稍后通过Ajax/DHTML引入的内容.
我已将事件附加到文本框中addEventListener
.它工作正常.当我想以编程方式从另一个函数触发事件时,我的问题出现了.
我该怎么做?
<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("button").click(function() {
$("h2").html("<p class='test'>click me</p>")
});
$(".test").click(function(){
alert();
});
});
</script>
</head>
<body>
<h2></h2>
<button>generate new element</button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我试图生成类名称的新标签test
中<h2>
单击按钮.我还定义了一个与之关联的点击事件test
.但事件不起作用.
有人可以帮忙吗?
有没有办法使用多个对象订阅事件 $watch
例如
$scope.$watch('item1, item2', function () { });
Run Code Online (Sandbox Code Playgroud) events ×10
javascript ×7
jquery ×6
dom ×2
angularjs ×1
bind ×1
dhtml ×1
dom-events ×1
keypress ×1
triggers ×1