jQuery小知识点

1、js只有一个入口函数,如果写了多个,只执行最后写的一个。
jq的入口函数可以有多个,按顺序执行,但是只需要写一个就够了。
2、$其实就是一个函数,以后用$符号的时候,需要加小括号$()参数不同功能不同,三种用法:

  • 参数是一个function,就代表是入口函数
    `$(function(){

        })`
    
  • $(domobj)把dom对象转换成jq对象
  • 参数是一个字符串,用来找对象。$(div)
    3、mouseenter和mouseleave是jq特有的鼠标事件,效率高
    mouseenter和mouseover的区别:当鼠标进入嵌套标签时,仅仅给父级设置鼠标事件时,对于mouseover来说,进入父级会触发一次,进入子元素又会触发一次,从子元素移入到父元素还会触发,有点类似事件冒泡。而对于mouseenter,只会在父级范围内触发一次,移入子元素也不会再次触发,只有当你从父级离开,再次进入时会再触发一次。
    4、jq链式编程,方法可以一直被调用下去,为什么能够一直调用下去是因为jq每次返回的都是一个jq对象。如果最后有返回一个不是jq对象就不可以继续链式编程了。
    5、index()方法返回的是当前元素在所有兄弟元素里面的索引。
    6、css操作时操作style里面写的那些样式,而attr是改变一些属性,如src,title等等,attr可以设置一个自定义属性,也可以获取属性,用法和css相同。
    7、对于布尔类型的属性,不应用attr方法,应该用prop方法。例如secleted,checked,disable. prop()方法和attr用法相同。
    8、jQuery对象命名一般约定为$开头
    9、:header找到标题元素,h1—h6
    10、清空节点,html()可以清空内容,但是不会清除事件,empty()会清空事件,remove(),是移除自己,谁调用这个方法移除谁。对于clone(),克隆过后要记得appendTo(),记得加到html中,clone()中默认是false即深度复制,但是不会复制事件。没有浅复制,因为没有意义,参数是true时,也是深度复制,并且是会复制事件
    11、jq中创建节点,直接用$()括起来即可。$(<span></span>)
    12、val()返回的是字符串,而不是jq对象
    13、h5中input里面有个属性placeholder,他可以设置输入框默认的值,鼠标放进去不会消失,但是当开始输入新的信息时会消失。
    14、可以在动画之间加入一个delay()方法,即是延时后面跟的方法的执行,适用于,提示消息,一秒钟显示,然后延时两秒再消失。

猜你喜欢

转载自blog.csdn.net/ilikejj0/article/details/79640824