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>

      

     
  • 相关阅读:
    结构体数组
    关于VCL的编写 (一) 如何编写自己的VCL控件
    谈一下怎样设计Oracle 分区表
    c++截取屏幕图片并保存(函数代码实现)
    微信公众平台开发之微团购
    怎么调用系统通讯录并向被选中联系人发送短信
    TFS(Team Foundation Server)介绍和入门
    2014百度之星资格赛题解
    C语言中volatilekeyword的作用
    自己定义滑动开关控件的实现与使用
  • 原文地址:https://www.cnblogs.com/regit/p/8968086.html
Copyright © 2011-2022 走看看