我有一个带有onblur事件监听器的输入标签:
<input id="myField" type="input" onblur="doSomething(this)" />
Run Code Online (Sandbox Code Playgroud)
通过JavaScript,我想触发此输入上的模糊事件,以便它反过来调用该doSomething函数.
我最初的想法是调用模糊:
document.getElementById('myField').blur()
Run Code Online (Sandbox Code Playgroud)
但这不起作用(虽然没有错误).
这样做:
document.getElementById('myField').onblur()
Run Code Online (Sandbox Code Playgroud)
这是为什么?.click()将通过onclick监听器调用附加到元素的click事件.为什么不blur()以同样的方式工作?
我有一个简单的幻灯片,我在客户的主页上制作,使用setInterval来计算旋转时间.
为防止浏览器在页面未对焦(正在查看另一个选项卡或其他程序)时搞砸setInterval,我正在使用:
function onBlur() {
clearInterval(play);
};
function onFocus() {
mySlideRotateFunction();
};
if (/*@cc_on!@*/false) {
document.onfocusin = onFocus;
document.onfocusout = onBlur;
} else {
window.onfocus = onFocus;
window.onblur = onBlur;
}
Run Code Online (Sandbox Code Playgroud)
mySlideRotateFunction设置setInterval并运行一些jQuery.虽然这在大多数情况下是有效的,但我发现,有时看起来似乎onBlur还没有运行,当我回到页面时,时间已经"积累"并且旋转变得疯狂.
我无法确定为什么有时会发生这种情况的原因,而不是其他原因.
我的问题 - 我的代码存在问题,当浏览器窗口失焦时,是否有人有更好的建议'暂停'setInterval?
谢谢
我在DIV中有一个下拉菜单.
当用户点击其他地方时,我希望隐藏下拉列表.
$('div').blur(function() { $(this).hide(); }
Run Code Online (Sandbox Code Playgroud)
不管用.
我知道.blur只能用,<a>但在这种情况下,什么是最简单的解决方案?
我有以下输入字段如下.在模糊时,该函数调用服务来更新服务器的输入值,一旦完成,它就会更新输入字段.
我怎样才能使它工作?我能理解为什么它不会让我改变字段,但我能做些什么来使它工作?
我不能使用,defaultValue因为我会将这些字段更改为其他字段
<input value={this.props.inputValue} onBlur={this.props.actions.updateInput} />
基本上我需要检查'blur'事件的文本框中是否更改了值,这样如果值没有改变,我想取消模糊事件.
如果可以检查它,用户是否在输入HTML元素的blur事件上更改了值?
谢谢,
嗨我有一个包含三个文本框的div,我需要一个函数在控件超出div标签时被调用,我不想使用onclick事件,因为焦点可以通过按下来移出div键盘上的Tab键或其他方式.我还想知道是否有一种方法可以使用任何javascript库来实现这一点.
谢谢,这是示例html代码
<html>
<head>
<title>Div Onblur test</title>
<script type="text/javascript">
function Callme() {
alert("I am Called")
}
</script>
</head>
<body>
<div onblur="javascript:Callme();">
<input type=text value ="Inside DIV 1" />
<input type=text value ="Inside DIV 2" />
<input type=text value ="Inside DIV 3" />
</div>
<input type=text value ="Outside DIV" />
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 这个问题曾经在这里提出过,但几年前,当时没有跨平台的解决方案(除了setTimeout解决方案,这真的不是很方便).
我想做,onblur="foo(parm);"并且foo能够确定哪个元素现在具有焦点.
我正在使用常规的javascript; 请不要这个jQuery.
这些天有可能吗?
使用jQuery有什么好处
$(window).blur(function() { ... })
Run Code Online (Sandbox Code Playgroud)
附加事件处理程序与直接设置它
window.onblur = function() { ... }
Run Code Online (Sandbox Code Playgroud)
似乎后者不太健壮,因为它只支持一个模糊处理程序,并且当与其他包一起使用时,其他代码可能会window.blur用另一个函数覆盖该值.但是,这也不会发生在jQuery实现上,它可能window.blur用作底层实现吗?
编辑:有几个人也提到了window.addEventListener替代方案,可以用来添加'onblur'除上述方法之外的事件.
你好我想在用户在tinyMCE textarea中写完并点击外面的某个地方(onBlur)时做一些事情.到目前为止,我试过:
$('#id_topic_text_parent').live('blur',function(){
alert('asd')
//I saw #id_topic_text_parent in firebug, it is span containing the tiny mce
});
Run Code Online (Sandbox Code Playgroud)
也
$('#id_topic_title').blur(*and*)live('blur...
tinyMCE.activeEditor.blur(*and*)live('blur...
Run Code Online (Sandbox Code Playgroud)
但它不会工作.
你能帮助我吗?
当使用angularjs在该组件外部单击时,我必须关闭任何打开的组件.模糊事件是否有角度指令?如果没有,我该怎么办?
javascript ×10
onblur ×10
jquery ×7
html ×3
angularjs ×1
blur ×1
dom-events ×1
focus ×1
reactjs ×1
rte ×1
setinterval ×1
tinymce ×1