jQuery看到哪学到哪

来源:互联网 发布:矩阵的结合律如何证明 编辑:程序博客网 时间:2024/04/29 16:30
jQuery说白了就是对现有js的一个扩展, 比较智能而且灵活, 可以节省代码, 增强兼容性, 是配合html5开发的重要工具之一


事件触发trigger和triggerHandler

trigger 执行冒泡事件

triggerHandler 执行不冒泡事件

如果是一批p节点都添加了一个事件

$('p').click(function(){alert(1)});$('p').trigger('click'); $('p').triggerHandler('click');

trigger 会对每个p节点都进行事件传递

triggerHandler 只会激活第一个p节点的事件

标准处理会长很多很多

dispatch = w3c ? function(el, type){ try{ var evt = document.createEvent('Event'); evt.initEvent(type,true,true); el.dispatchEvent(evt); }catch(e){alert(e)}; } : function(el, type){ try{ el.fireEvent('on'+type); }catch(e){alert(e)} }; 


eq和get的区别

<p style="color:yellow">绯雨</p>$("p").eq(0).css("color")$("p").get(0).style.color$($("p").get(0)).css("color")


eq返回的是jq对象, get返回的是html对象

jq对象转换为html对象

任何时候只要在jq对象后面加上[0]就可以转为html对象


找到指定的类标签

很简单

$(".classA.classB")$(".classA").find("classB").hasClass("classB")


第一二行输出这个对象

第三行判断是否有这个对象


动态添加和移除class方法

对jq对象进行添加和移除class方法, 可以智能处理识别符

.addClass("intro");.removeClass("intro");



的子对象集children

$("#main").children("div.sub")



判断是否支持触摸

var isSupportTouch = ("createTouch" in document);


对象的隐藏和显示

$('ul.load_details').css({visibility,"visible"})$('ul.load_details').css({visibility,"hidden"})$('ul.load_details').show()$('ul.load_details').hide()


以上的css和jq方法是不冲突的, 如果css设置不可见, 则设置show无法显示, 请注意


对象的动画处理

http://api.jquery.com/animate/

除了显示隐藏, jq还有animate方法, 很方便

$("div.pt-triggers").animate({opacity: "show"},持续时间, 结束调用的方法);

具体设置参考官网api帮助


id和class的命名规则

不要使用.连字符, 按照正常的变量方式来命名字符串, 否则jquery帮不了你


添加事件

很简单, 相比js的简单多了

$("#obj_id_name").click(function(){//sth})

下面是普通方式添加

var btn = document.getElementById("myBtn");btn.addEventListener("click", function () {    alert(this.id);}, false);

判断浏览器平台, 内核, 相对全

借鉴了下面两个网址, 都有错, 修正了一下

http://www.jb51.net/article/26736.htm

http://blog.csdn.net/sangim/article/details/8834104

var browser={        versions:function(){            var u = navigator.userAgent, app = navigator.appVersion;            return {version: (u.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1], safari: /webkit/.test( u ), opera: /opera/.test( u ), msie: /msie/.test( u ) && !/opera/.test( u ), mozilla: /(mozilla|Mozilla)/.test( u ) && !/(compatible|webkit)/.test( u ) ,                trident: u.indexOf('Trident') > -1, //IE内核                presto: u.indexOf('Presto') > -1, //opera内核                webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核                gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核                mobile: !!u.match(/AppleWebKit.*Mobile.*/),//||!!u.match(/AppleWebKit/), //是否为移动终端                ios: !!u.match(/(i[^;]+\;(U;)? CPU.+Mac OS X)/), //ios终端                android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器                iPhone: u.indexOf('iPhone') > -1,// || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器                iPad: u.indexOf('iPad') > -1, //是否iPad                webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部            };            }(),            language:(navigator.browserLanguage || navigator.language).toLowerCase()        }


ios不支持html5麦克风录制声音

http://www.jb51.net/html5/81028.html





















0 0
原创粉丝点击