jQuery初学-选择器

jquery 是 js的封装的一个框架 快速开发
* 优点:写的少 做的比较多 处理浏览器之间的兼容性
* 把js的大量语法进行封装
jquery 在网页里面怎么去写
* jquery库
* 版本更新 出现很多库 压缩版的 完成版 3.4.1
* 开发的时候不一定越新越好 根据自己的需求去选择
* 开发 1.9.1 3.4.1
*jquery库 在head body里面都是可以引入

		attr(name|pro|key,val|fn) 获取或设置元素的属性,可以设置多个
         removeAttr(name) 可以移除自带的属性  也可以移除自定义属性  ****移除的是属性****
         prop(n|p|k,v|fn) 获取或设置元素的属性,可以设置多个,能设置自定义属性   能设置  但是  不显示
         removeProp(name) 移除的是属性值  但属性还在   编译器里面没有修改
         CSS 类
         addClass(class|fn) 添加类
         removeClass([class|fn]) 移除类
         toggleClass(class|fn[,sw]) 切换类
         HTML代码/文本/值
         html([val|fn])
         text([val|fn])
         val([val|fn|arr])*/
		 所有可以连点

在这里插入图片描述
在这里插入图片描述
jquery dom获取的时候注意元素是否初始化
$(document).ready(function (){
(内容)
});
$(function (){

});
选择器:http://jquery.cuishifeng.cn/element.html;

		**层次选择器**
		($("ul.menu li"));
        ($("ul.menu>li"));
        ($(".li2+li")); +代表下一个li
        ($(".li2~li")); ~获取当前匹配元素之后的所有
        **基本筛选器**
        ($("ul.menu>li:first"));
        console.log($("ul.menu>li:last"));
        console.log($("ul.menu>li:not(.li2)"));
        console.log($("ul.menu>li:even"));//偶数获取
        console.log($("ul.menu>li:odd"));//奇数获取
        console.log($("ul.menu>li:eq(2)"));//按照索引来获取
        console.log($("ul.menu>li:gt(2)"));//获取大于索引
        console.log($("ul.menu>li:lt(2)"));//获取大于索引
        console.log($(":header"));//获取所有的h标签
        console.log($("input:focus"));//获取获得焦点的元素
        console.log($(":root"));//直接获取html
        **内容选择器**
		 :parent
         ($("div:contains('今')"));//包含某个内容
         ($("div:empty")); //直接获取空元素
         ($("ul:has(.li2)"));//匹配包含某个元素的父元素
         ($("div:parent"));//匹配的元素必须是父元素
         可见性
       **根据元素的显示隐藏来匹配元素**
         ($("button:visible"));
         ($("button:hidden"));
        **根据元素的属性来匹配元素的**
		 ($("button[id]"));
         ($("button[id][class]"));
         ($("button[id='btn']"));
         ($("button[id='btn'][class='btn']"));
         ($("button[id!='btn']"));
        ($("button[id!='btn'][class!='btn']"));
         ($("button[id^='b']"));//获取的属性值以什么开头
         ($("button[id$='n']"));//获取的属性值以什么结尾
         ($("button[id*='n']"));//获取的属性值包含什么


         **子元素过滤选择器**
   		  子元素
         :first-child 匹配第一个子元素
         :first-of-type1.9+ 匹配父元素 里面元素的第一个 
         :last-child 匹配最后一个子元素
         :last-of-type1.9+ 匹配父元素 里面元素的最后一个
         :nth-child() 括号里面写的是序号   1·开始
         :nth-last-child()1.9+ 选择所有他们父元素的第n个子元素。计数从最后一个元素开始到第一个
         :nth-last-of-type()1.9+ 选择的所有他们的父级元素的第n个子元素,计数从最后一个元素到第一个。
         :nth-of-type()1.9+ 属于一个父元素之下,并且标签名相同的子元素中的第n个。
         :only-child 如果某个元素是父元素中唯一的子元素,那将会被匹配,如果父元素中含有其他元素,那将不会被匹配
         :only-of-type1.9+ 所有没有兄弟元素,且具有相同的元素名称的元素。如果父元素有相同的元素名称的其他子元素,那么没有元素会被匹配。

		**表单**
		:input    匹配所有 input, textarea, select 和 button 元素
         :text   获取单行文本框的
         :password  获取密码框的
         :radio  获取单选按钮的
         :checkbox 获取复选框的
         :submit  获取表单提交的
         :image
         :reset  获取重置按钮
         :button   获取button
         :file   获取文件路径
         
         **表单对象属性**
         :enabled  获取可用的标签
         :disabled  获取不可用的
         :checked
         :selected   下拉菜单

		**混淆选择器**
		*版本低  .escapeSelector is not a function*
        console.log("."+$.escapeSelector(".box"));//\.box
        console.log($(".block").find("."+$.escapeSelector(".box")));

HTML代码/文本/值
html([val|fn])
text([val|fn])
val([val|fn|arr])

        类似js里面的innerHTML   innerText   value
        html  获取或设置元素的html值
        text  获取或设置元素的文本值
        val 获取或设置元素的value值
        ($("div").html());获取当前元素的html值
        ($("div").text());获取当前元素的text值
        ($("input").val());

        设置值
        $("div").html("<p>测试html</p>");
        $("div").text("<p>测试text</p>");不会自动解析标签
        $("input").val("你好");设置元素的value值

        **回调函数**
        $("div").html(function (index,old){
           			console.log(index, old);
          return '<p>新的html</p>';
        });


        $("div").text(function (index,old){
            console.log(index, old);
            return '<p>新的html</p>';
        });

        $("input").val(function (index,old){
            console.log(index,old);
            return old+"新的值"+index;
        });


        css()  操作元素css样式
          获取或者设置元素的css
          参数是获取的css的样式名称
       	  ($("button").css("border"));获取border样式
        不能获取多个样式
        $("button").css("color","red");
        css如何设置多个属性值
        $("button").css({
            color:"blue",
            backgroundColor:"red",
        /   borderWidth:"10px"
        });
        *设置多个css的时候  样式名称要规范*


        **位置**
        
        offset([coordinates])
        position()
        scrollTop([val])
        scrollLeft([val])
        offset()  返回值是一个对象  {left:0,top:0}
        ($("button").offset());  类似js  offsetLeft  offsetTop  在当前视口里面的偏移量
        var offset=$("button").offset();
        offset.left  ||   offset.top
        参数是设置的偏移  设置offset  自动添加  相对定位
        $("button").offset({left:100,top:100});
        position 相对于当前的父元素的偏移  返回值{left:0,top:0}
        ($("button").position());

        ***滚动距方法   获取或设置滚动条的距离***

		($(window).scrollTop());
        ($(window).scrollLeft());
        可以设置  网页刷新无效   网页重新打开是有效的
        设置的时候不带像素单位
        $(window).scrollTop(100);
        $(window).scrollLeft(300);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值