为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery学习笔记(二)

标签:
PHP JQuery

1、mousedown事件触发

  • 用event 对象的which区别按键,敲击鼠标左键which的值是1,敲击鼠标中键which的值是2,敲击鼠标右键which的值是3
<h4>测试一</h4>
    <button>弹出回调中的鼠标键</button>
    <script type="text/javascript">
    //this指向button元素
    $("button:eq(0)").mousedown(function(e) {
        alert('e: ' + e.which)
    })
    </script>

2、mousemove事件

mouseover事件是当鼠标指针移动时触发的,即使是一个像素

如果处理器做任何重大的处理,或者如果该事件存在多个处理函数,这可能 造成浏览器的严重的性能问题

pageX() 属性是鼠标指针的位置,相对于文档的左边缘。

语法

event.pageX

参数 描述

event 必需。规定要使用的事件。这个 event 参数来自事件绑定函数。

    <h4>测试二</h4>
    <div class="left">
        <div class="aaron1">
            <p>鼠标在绿色区域移动触发mousemove</p>
            <p>移动的X位置:</p>
        </div>
    </div>
    <script type="text/javascript">
    //绑定一个mousemove事件
    //触发后修改内容
    $(".aaron1").mousemove(function(e) {
        $(this).find('p:last').html('移动的X位置:' + e.pageX)
    })
    </script>

3、mouseenter事件和mouseover的区别

关键点就是:冒泡的方式处理问题;
mouseenter事件只会在绑定它的元素上被调用,而不会在后代节点上被触发

4、.hover方法

$(selector).hover(handlerIn, handlerOut)

handlerIn(eventObject):当鼠标指针进入元素时触发执行的事件函数

handlerOut(eventObject):当鼠标指针离开元素时触发执行的事件函数

5、带参数的事件书写方式

$(input).focusin('参数',function(e){
    $(this).val(e.data);
})

focus与blur、focusin与focusout都能接受到冒泡

但是 focus与blur对冒泡不会处理,focusin与focusout会对冒泡事件处理

区别就在于“处不处理”冒泡事件

6、change事件

input元素,textarea和select元素的值都是可以发生改变的,改变时触发

获取所改变后的值

 $('.target').change(function(e) {
        $("#result").html(e.target.value)
    });

e.target表示该DOM元素,然后在获取其相应的属性值。

select事件只能用于<input>元素与<textarea>元素(鼠标选中文字)

7、事件冒泡

1.event.stopPropagation();
  事件处理过程中,阻止了事件冒泡,但不会阻击默认行为

2.return false;
  事件处理过程中,阻止了事件冒泡,也阻止了默认行为

3.event.preventDefault();
  它的作用是:事件处理过程中,不阻击事件冒泡,但阻击默认行为

$('#target1').submit(function(e) {
        alert('捕获提交表达动作,阻止页面跳转')
        e.preventDefault();
        //return false;
    });

8、on事件

多个事件绑定同一个函数,通过空格分离,传递不同的事件名,可以同时绑定多个事件

$("#elem").on("mouseover mouseout",function(){ });

多个事件绑定不同函数,通过空格分离,传递不同的事件名,可以同时绑定多个事件,每一个事件执行自己的回调方法

$("#elem").on({
    mouseover:function(){},  
    mouseout:function(){},
});

将数据传递到处理程序,可以通过第二参数(对象),当一个事件被触发时,要传递给事件处理函数的

function greet( event ) {
  alert( "Hello " + event.data.name ); //Hello 慕课网
}
$( "button" ).on( "click", {
  name: "慕课网"
}, greet );

9、事件对象的属性和方法

event.type:获取事件的类型

event.pageX 和 event.pageY:获取鼠标当前相对于页面的坐标

event.preventDefault() 方法:阻止默认行为

event.stopPropagation() 方法:阻止事件冒泡

event.which:获取在鼠标单击时,单击的是鼠标的哪个键

event.currentTarget : 在事件冒泡过程中的当前DOM元素

this和event.target的区别:

js中事件是会冒泡的,所以this是可以变化的,但event.target不会变化,它永远是直接接受事件的目标DOM元素;

.this和event.target都是dom对象

如果要使用jquey中的方法可以将他们转换为jquery对象。比如this和$(this)的使用、event.target和$(event.target)的使用;

10、jQuery.trim()函数用于去除字符串两端的空白字符

11、第二个a元素的查找: $(a).get(1)
get方法还可以从后往前索引,传递一个负索引值,注意的负值的索引起始值是-1,$(a).get(-1)

点击查看更多内容
3人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
82
获赞与收藏
1103

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消