锋利的jq--读感

val() 有选中功能

    能使select,checkbox,radio相应的选项被选中。

closest() 取得最近的匹配元素

style对象无法提取到通过外部css设置的样式信息,$.css()可以

合成事件(两个自带的方法)    hover();  // hover(enter,leave),hover效果

    toggle() // toggle(fn1,fn2...fnN),连续点击事件   toggle()还可以切换元素的可见状态(没参数时)。。

阻止事件冒泡      (jq不支持事件捕获)

    e.stopPropagation();

阻止默认行为

    e.preventDefault();   // 同时调用stopPropagation()与preventDelault() 可用 return false 代替

事件的其他属性

    e.type() ;

    e.target();   //获取触发事件的元素

    e.pageX(),e.pageY(); //光标相当于页面的坐标

    e.which(); // 获取点击时按的鼠标键  1-左键,2-中键, 3-右键

    e.metaKey(); // 获取ctrl键

   e.originalEvent(); // 指向原始的事件对象

模拟操作

    $('#btn').trigger('click') === $('#btn').click();   // 页面加载完后不需要点击就可以触发

    $('#btn').bind('myClick',function(){});     $('#btn').trigger('myClick'); // 触发自定义名称的事件

    $('#btn').bind('myClick',function(e,msg1,msg2){

      $('#text').append('<p>'+msg1+msg2+'</p>');

    });  

      $('#btn').trigger('myClick',['msg1的信息','msg2的信息']); // trigger(type,[data]) 传递数据

    $('input').trigger('focus') // 执行默认操作  不仅会触发<input>上的focus事件,页会使input元素获得焦点(浏览器默认操作)

    $('input').triggerHandler('focus') // 只触发事件

动画

    stop();  // 两个参数(clearQueue,gotoEnd)

    判断元素是否处于动画状态

        if($(element).is(':animated'))

动画列队

    一组元素上的动画效果

      当在animate()中应用多个属性时,动画同时发生

      当以链式写法调用时,动画是按顺序发生的

    多组元素上的动画效果

      默认情况下,动画是同时发生的

      以回调函数应用动画是,按回调顺序发生

    在动画方法中,其他非动画方法会插队,要使其按顺序执行,需要把他们放到回调函数中

136了

原文地址:https://www.cnblogs.com/sao-di-seng/p/5446735.html