zoukankan      html  css  js  c++  java
  • jquery加载方式,选择器,样式操作

    原生js和css不兼容,jquery已经过测试,可放心使用
    https://code.jquery.com   这个网站可以下载jquery的源码,比如把源码下载到js文件夹中,文件名为jquery-1.12.4.min.js ,有min字样的是精简版的
     

    一. 比较原生的和jquery的用法

     
    例子1,页面弹出<div>元素中的文本
    <head>
        <script type="text/javascript" src="js/jquery-1.12.4.min.js"></script> #先导入库
        <script type="text/javascript">  #再来一个<script>标签来用jquery库
        
            #原生js的方法
            window.onload = function() {
                  var oDiv = document.getElementById('div');
                  alert(oDiv.innerHTML);
             }
     
            #Jquery的方法
            $(document).ready(function() {
                  var $div = $('#div');   其中#div和css中的ID选择器一样    
                  alert($div.html() + 'test');  #后面加test是为了和原生的做区分
            });
      
        </script>
    </head>
     
    <body>
        <div id="div">这是一个div元素</div>
    </body>
     
    

      

    注意:
    1. 刷新页面后,会首先弹出jquery的文本:"这是一个div元素test" ,然后才会弹出原生的,原因是因为window.onload需要等网页中所有元素加载完,并且经过渲染后才会执行里面的代码;而jquery中的ready函数只需要页面中元素加载完就可以执行里面的代码,不需要经过渲染。
     
    2. $(document).ready(function(){....})可以简写成$(function(){...})
     
     
     

    二. jquery选择器

    jquery用法思想一 
    选择某个网页元素,然后对它进行某种操作


    1. jquery选择器可以快速地选择元素,选择规则和css样式相同,使用length属性判断是否选择成功。

    $(document) //选择整个文档对象
    $('li') //选择所有的li元素
    $('#myId') //选择id为myId的网页元素
    $('.myClass') // 选择class为myClass的元素
    $('input[name=first]') // 选择name属性等于first的input元素
    $('#ul1 li span') //选择id为为ul1元素下的所有li下的span元素
    

      

    2. 对选择集进行修饰过滤(类似CSS伪类)

    $('#ul1 li:first') //选择id为ul1元素下的第一个li
    $('#ul1 li:odd') //选择id为ul1元素下的li的奇数行
    $('#ul1 li:eq(2)') //选择id为ul1元素下的第3个li
    $('#ul1 li:gt(2)') // 选择id为ul1元素下的前三个之后的li
    $('#myForm :input') // 选择表单中的input元素
    $('div:visible') //选择可见的div元素
    

      

    3. 对选择集进行函数过滤

    $('div').has('p'); // 选择包含p元素的div元素
    $('div').not('.myClass'); //选择class不等于myClass的div元素
    $('div').filter('.myClass'); //选择class等于myClass的div元素
    $('div').first(); //选择第1个div元素
    $('div').eq(5); //选择第6个div元素
    

      

    4. 选择集转移

    $('div').prevAll('p'); //选择div元素前面的第一个p元素
    $('div').nextAll('p'); //选择div元素后面的第一个p元素
    $('div').closest('form'); //选择离div最近的那个form父元素
    $('div').parent(); //选择div的父元素
    $('div').children(); //选择div的所有子元素
    $('div').siblings(); //选择div的同级元素
    $('div').find('.myClass'); //选择div内的class等于myClass的元素
    

    注意:

    next() 同级的下一个元素,nextAll()表同级的下面所有的元素

    prev() 同级的上一个元素,prevAll()表同级的上面所有的元素
     
     
     
     例子1
    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>jquery 选择器</title>
    	<script type="text/javascript" src="js/jquery-1.12.4.min.js"></script>
    	<script type="text/javascript">
    		$(function(){
    
    			$('#div1').css({color:'pink'});  #修改原css样式的方法
    			$('.box').css({fontSize:'30px'});  #fontSize要写成驼峰式
    			$('.list li').css({background:'green',color:'#fff',fontSize:'20px'});
    
    		});
    
    	</script>
    
    	<style type="text/css">
    		
    		#div1{
    			color:red;
    		}
    
    		.box{
    			color:green;
    		}
    
    		.list li{
    			
    			margin-bottom:10px;
    		}
    
    
    
    
    	</style>
    </head>
    <body>
    	<div id="div1">这是一个div元素</div>
    	<div class="box">这是第二个div元素</div>
    	<ul class="list">
    		<li>1</li>
    		<li>2</li>
    		<li>3</li>
    		<li>4</li>
    		<li>5</li>
    		<li>6</li>
    		<li>7</li>
    		<li>8</li>
    	</ul>
    </body>
    </html>
    

      

     例子2,验证选择集转移
     
    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    	<script type="text/javascript" src="js/jquery-1.12.4.min.js"></script>
    	<script type="text/javascript">
    		$(function(){
    
    			// next() 同级的下一个元素,nextAll同级的下面所有的元素
    
    			// prev() 同级的上一个元素,prevAll同级的上面所有的元素
    
    			$('#div1').nextAll('p').css({color:'red'});
    
    
    			//选择上一级的父元素
    			$('#span01').parent().css({'100px',height:'100px',background:'gold'});
    
    
    
    			//选择离最近的元素,元素可以是父级,可以是子集,closest()常用于多层标签结构中
    			$('#span02').closest('div').css({'200px',height:'200px',background:'pink'});
    
    			// $('.list li'):不能回到父级
    			// $('.list').children():可以通过end() 回到父级; mairginBottom为每一个<li>设置外边距以便区分
    			$('.list').children().css({background:'gold',height:'30px',marginBottom:'10px'}).end().css({background:'green'});
                           
                //验证$('.div').siblings(),eq(2)表示第3个<li>,作用就是把第3个<li>背景设为gold, 其他的<li>为green
    			$('.list2 li:eq(2)').css({background:'gold'}).siblings().css({background:'green'});
    
                //验证$('.div').find(),找到<div2>中的<a>标签,设置里面的字体颜色
    			$('#div2').find('.link1').css({color:'red'});
    
    			
    			
    
    
    
    
    
    		})
    
    
    	</script>
    </head>
    <body>
    	<div id="div1">这是一个div元素</div>
    	<div>这是第二个div元素</div>
    	<p>这是一个p元素</p>
    	
    	<div>
    		<a href="#">百度网</a>
    		<span id="span01">span元素</span>
    	</div>
    
    
    	<div id="div2">
    		<p>
    			<a href="#" class="link1">腾讯网</a>
    			<span id="span02">span元素</span>
    		</p>
    	</div>
    
    	<ul class="list">
    		<li>1</li>
    		<li>2</li>
    		<li>3</li>
    		<li>4</li>
    		<li>5</li>
    		<li>6</li>
    		<li>7</li>
    		<li>8</li>
    	</ul>
    
    
    	<ul class="list2">
    		<li>1</li>
    		<li>2</li>
    		<li>3</li>
    		<li>4</li>
    		<li>5</li>
    	</ul>
    
    </body>
    </html>
    

      

     三. 样式操作

    jquery用法思想二 
    同一个函数完成取值和赋值

    1. 操作行间样式

    // 获取div的样式
    $("div").css("width");
    $("div").css("color");
    
    
    //设置div的样式
    $("div").css("width","30px");
    $("div").css("height","30px");
    $("div").css({fontSize:"30px",color:"red"});
    

      

    特别注意 
    选择器获取的多个元素,获取信息获取的是第一个,比如:$("div").css("width"),获取的是第一个div的width。

    2. 操作样式类名

    $("#div1").addClass("divClass2") //为id为div1的对象追加样式divClass2
    $("#div1").removeClass("divClass")  //移除id为div1的对象的class名为divClass的样式
    $("#div1").removeClass("divClass divClass2") //移除多个样式
    $("#div1").toggleClass("anotherClass") //重复切换anotherClass样式
    

      

    例子1, 上面的jquery操作都是设置样式,那么怎么读取原先样式的属性呢

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>Document</title>
    	<script type="text/javascript" src="js/jquery-1.12.4.min.js"></script>
    	<script type="text/javascript">
    		$(function(){
    
    			// 读取样式,获取字体大小
    			alert(  $('.div1').css('fontSize') );
    
    			// 设置样式(写入)
    			$('.div1').css({background:'gold'});
    
    //为.div1追加样式big $('.div1').addClass('big');
    //去除div1样式 $('.div1').removeClass('div1'); }) </script> <style type="text/css"> .big{ font-size:30px; } </style> </head> <body> <div class="div1">这是一个div元素</div> </body> </html>

      

     
  • 相关阅读:
    Java学习开篇
    《我的姐姐》
    世上本无事,庸人自扰之
    这48小时
    补觉
    淡定
    es java api 设置index mapping 报错 mapping source must be pairs of fieldnames and properties definition.
    java mongodb groupby分组查询
    linux 常用命令
    mongodb too many users are authenticated
  • 原文地址:https://www.cnblogs.com/regit/p/8968086.html
Copyright © 2011-2022 走看看