kon*_*ung 2 jquery focus blur delay settimeout
请考虑以下代码:
//Focus on the field on page load.
$("#user_login").focus();
//Remove prompt after a couple of seconds.
window.setTimeout(function() {
$("#user_login").blur();},
3000);
Run Code Online (Sandbox Code Playgroud)
我有几个工具提示和其他事件绑定到焦点上的#user_login输入.但是不要惹恼用户,我想在几秒钟之后删除焦点.
这是我现在正在做的一种方式 - 因为我可以理解delay()在这种情况下不起作用.还有其他纯粹的jquery方法吗?有点像:
$("#user_login").focus().delay(3000).blur();
Run Code Online (Sandbox Code Playgroud)
谢谢
PS:我的解决方案现在正常工作,这更多用于教育目的.
delay() 仅适用于动画.
制作一个插件:
(function($) {
$.fn.promptTooltip = function(duration) {
$this = $(this);
$this.focus();
setTimeout(function() {
$this.blur();
}, duration);
};
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
使用插件:
$('#testme').promptTooltip(3000);
Run Code Online (Sandbox Code Playgroud)
这是一个愚蠢的演示:http://jsfiddle.net/AlienWebguy/gKECa/
| 归档时间: |
|
| 查看次数: |
3805 次 |
| 最近记录: |