JS—事件类型(焦点事件、鼠标事件(部分))

JS—事件类型(焦点事件、鼠标事件(部分)),第1张

【需要注意】虽然focus与blur不冒泡,但是却可以在捕获阶段侦听到它们。

只定义了div2即棕色的那个div的事件

【解释enter与leave】:当鼠标由粉移向棕色时,显示enter,鼠标由棕移向绿时,不显示leave与enter。当移出粉色时,显示leave。

【解释over与out】:当鼠标由粉移向棕色时,显示over,鼠标由棕移向绿时,显示out在显示over,鼠标由绿移向棕时,显示out载显示over。为什么会显示呢?是因为事件冒泡,由棕移向绿时会触发div3的over事件,但是div3并没有定义,所以向上冒泡到div2。所以会显示div2的over事件。

【总结】mouseenter与mouseleave是IE提出的事件,不冒泡。但是mouseover与mouseout事件则通过简单的e.stopPropagation()也无法避免冒泡的现象。

代码如下:

<input name="pwuser" type="text" id="pwuser" class="input" value="楼盘账号" onBlur="if(this.value=='') this.value='楼盘账号'" onFocus="if(this.value=='楼盘账号') this.value=''" />

<input name="pwpwd" type="password" class="input1" value="******" onBlur="if(this.value=='') this.value='******'" onFocus="if(this.value=='******') this.value=''">

jquery实现方法

对于元素的焦点事件,我们可以使用jQuery的焦点函数focus(),blur()。

focus():得到焦点时使用,和javascript中的onfocus使用方法相同。

如:

代码如下:

$("p").focus()或$("p").focus(fn)

blur():和onblur一样。

如:

代码如下:

$("p").blur()或$("p").blur(fn)

实例

代码如下:

<form>

<label for="searchKey" id="lbSearch">搜神马?</label>这里label覆盖在文本框上,可以更好的控制样式

<input id="searchKey" type="text" />

<input type="submit" value="搜索" />

</form>

jquery代码

代码如下:

$(function() {

$('#searchKey').focus(function() {

$('#lbSearch').text('')

})

$('#searchKey').blur(function() {

var str = $(this).val()

str = $.trim(str)

if(str == '')

$('#lbSearch').text('搜神马?')

})

})

思路:

当鼠标移入input的时候,日期显示。 onmouseover

给日期上的每个格子添加点击事件。onclick

在给input添加一个点击事件,隐藏日期。onclick


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11515484.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存