jQuery-介绍 加载 选择器 样式操作 属性操作 绑定click事件

jQuery - 介绍 加载 选择器 样式操作 属性操作 绑定click事件

注意:以下部分问题不能实现效果,因该是单词拼写错误(少个t)或者没有加引号(“swing”)。。。

jquery介绍

jQuery是目前使用最广泛的javascript函数库。据统计,全世界排名前100万的网站,有46%使用jQuery,远远超过其他库。微软公司甚至把jQuery作为他们的官方库。

jQuery的版本分为1.x系列和2.x、3.x系列,1.x系列兼容低版本的浏览器,2.x、3.x系列放弃支持低版本浏览器,目前使用最多的是1.x系列的。

jquery是一个函数库,一个js文件,页面用script标签引入这个js文件就可以使用。

<script type= " text/javascript " src= " js/jquery-1.12.2.js " ></script>

jquery的口号和愿望Write Less, Do More(写得少,做得多)

1、http://jquery.com/  官方网站
2、https://code.jquery.com/  版本下载

jquery加载

将获取元素的语句写到页面头部,会因为元素还没有加载而出错,jquery提供了ready方法解决这个问题,它的速度比原生的window.onload 更快。

<script type= " text/javascript " >

$(document).ready(function(){

     ......

});

</script>

可以简写为:

<script type= " text/javascript " >

$(function(){

     ......

});

</script>

jquery选择器

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

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

$( " #test " ).html()

         意思是指:获取ID为test的元素内的html代码。其中html()是jQuery里的方法

         这段代码等同于用DOM实现代码: document.getElementById( " test " ).innerHTML;

         虽然jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法.乱使用会报错

         约定:如果获取的是jQuery 对象, 那么要在变量前面加上$. 

var $variable = jQuery对象
 var variable = DOM对象

$variable[ 0 ]:jquery对象转为dom对象$( " #msg " ).html(); $( " #msg " )[ 0 ].innerHTML

jquery的基础语法:$(selector).action()

参考:http://jquery.cuishifeng.cn/

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

对选择集进行修饰过滤(类似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元素

表单选择器

    :enabled
    :disabled
    : checked
    :selected

<body>

<form>
    <input type= " checkbox " value= " 123 "  checked >
    <input type= " checkbox " value= " 456 "  checked >

  < select >
      <option value= " 1 " >Flowers</option>
      <option value= " 2 " selected= " selected " >Gardens</option>
      <option value= " 3 " selected= " selected " >Trees</option>
      <option value= " 3 " selected= " selected " >Trees</option>
  </ select >
</form>

<script src= " jquery.min.js " ></script>
<script>
    // console.log($("input:checked").length);      // 2

    // console.log($("option:selected").length);    // 只能默认选中一个,所以只能lenth:1 

    $( " input:checked " ).each(function(){

        console.log($( this ).val())
    })

</script>

</body>

such as

对选择集进行函数过滤

$( ‘ 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元素

选择集转移

$( ‘ div ‘ ).prev( ‘ p ‘ ); // 选择div元素前面的第一个p元素
$( " div " ).prevAll()
$( " div " ).prevUntil()   // 直到找到符合括号里面的条件的停止
$( ‘ div ‘ ).next( ‘ p ‘ ); // 选择div元素后面的第一个p元素
$( " .test " ).nextAll()
$( " .test " ).nextUntil()
$( ‘ div ‘ ).closest( ‘ form ‘ ); // 选择离div最近的那个form父元素
$( ‘ div ‘ ).parent(); // 选择div的父元素
$( " .test " ) .parents();所有级别的父级别标签
$( " .test " ).parentUntil() ;所有级别的父级别标签,直到。。。
$( ‘ div ‘ ).children(); // 选择div的所有子元素
$( ‘ div ‘ ).siblings(); // 选择div的同级元素
$( ‘ div ‘ ).find( ‘ .myClass ‘ ); // 选择div内的class等于myClass的元素

jquery样式操作

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

操作行间样式

// 获取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。

操作样式类名

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

jquery属性操作

1、html() 取出或设置html内容

// 取出html内容

var $htm = $( ‘ #div1 ‘ ).html();

// 设置html内容

$( ‘ #div1 ‘ ).html( ‘ <span>添加文字</span> ‘ );

2、text() 取出或设置text内容

// 取出文本内容

var $htm = $( ‘ #div1 ‘ ).text();

// 设置文本内容

$( ‘ #div1 ‘ ).text( ‘ <span>添加文字</span> ‘ );

3、attr() 取出或设置某个属性的值

// 取出图片的地址

var $src = $(‘#img1‘).attr(‘src‘);

// 设置图片的地址和alt属性

$(‘#img1‘).attr({ src: "test.jpg", alt: "Test Image" });

绑定click事件

给元素绑定click事件,可以用如下方法:

$(‘#btn1‘).click(function(){

    // 内部的this指的是原生对象

    // 使用jquery对象用 $(this)

})

事件委派
  $(父标签).on("click",".item",function(){});
  --- 解决添加子元素的绑定事件

  $(标签).off(事件)
  --- 接触事件

时间: 2024-10-24 10:08:54

jQuery-介绍 加载 选择器 样式操作 属性操作 绑定click事件的相关文章

19 01 13 JQery 加载 选择器 样式操作

在Javascript   中应该用下方法经行编辑 <script type="text/javascript" src="js/jquery-1.12.4.min.js"></script> // 导入JQery 选择器 <script type="text/javascript"> // 下面是编辑的内容 $(function() { var $div1 = $('.div1'); $div1.css({'

前端 之 jQuery: 简介, 选择器, 动画效果, 属性操作; (一)

jQuery 简介 jQuery 选择器 jQuery 动画效果 jQuery 属性操作 jQuery 简介 为什么要使用jQuery: 答: 因为优秀. 什么是 jQuery: jQuery 是 js 的一个库,封装了我们开发过程中常用的一些功能,方便我们调用,提高开发效率. js库是把我们常用的功能放到一个单独的文件中,我们用的时候,直接引用到页面里即可. 关于jQuery的相关资料: 官网:http://jquery.com/ 官网API文档:http://api.jquery.com/

jQuery - 02. 样式表属性操作/类操作、动画、显示隐藏、滑入、淡入、停止动画、节点操作、添加对象、清空节点

样式表属性操作.css $("div").css({'width':100,'height':100,'background':'red'}); $("div").css("background","pink"); 类操作 .addClass添加类   $("div").addClass("class"); .removeClass删除类   $("div).removeCla

jQuery异步加载数据添加事件

几个月前在一个项目中涉及到树形栏,然后看了很多插件,觉得有点麻烦,于是自己写了一个,写着写着就出问题了.当时项目是通过树形栏进行权限控制的,管理员可以对从数据库去的数据动态生成树形栏进行增删改查操作,可是用$(".XX").click();方法是不行的.1.之前用的是jq1.4.3 ,jq1.7一下都可以使用live()方法,来实现该功能 $('#div').live('click',function(){ //do stuff }); 但是live方法也有不支持的事件,例如:togg

jQuery+zTree加载树形结构菜单

jQuery+zTree加载树形结构菜单 由于项目中需要设计树形菜单功能,经过一番捣腾之后,终于给弄出来了,所以便记下来,也算是学习zTree的一个总结吧. zTree的介绍: 1.zTree 是利用 JQuery 的核心代码,实现一套能完成大部分常用功能的 Tree 插件 2.zTree v3.0 将核心代码按照功能进行了分割,不需要的代码可以不用加载 3.采用了 延迟加载 技术,上万节点轻松加载,即使在 IE6 下也能基本做到秒杀 4.兼容 IE.FireFox.Chrome.Opera.S

《Entity Framework 6 Recipes》中文翻译系列 (28) ------ 第五章 加载实体和导航属性之测试实体是否加载与显式加载关联实体

翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-11  测试实体引用或实体集合是否加载 问题 你想测试关联实体或实体集合是否已经加载到上下文中,另外你想使用Code-First来管理数据访问. 解决方案 假设你有如图5-26所示的概念模型 图5-26 一个包含projects,managers和contractors的模型 在Visual Studio中添加一个名为Recipe11的控制台应用,并确保引用了实体框架6的库,NuGet可

《Entity Framework 6 Recipes》中文翻译系列 (22) -----第五章 加载实体和导航属性之延迟加载

翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第五章 加载实体和导航属性 实体框架提供了非常棒的建模环境,它允许开发人员可视化地使用映射到数据库中的表.视图.存储过程以及关系中的实体类型.本节将向你展示如何控制查询操作中的关联实体的加载. 实体框架的默认行为是只加载应用程序直接需要的实体.通常情况下,这正是你需要的.如果实体框架通过一个或多个关联积极地加载关联实体,最终,你很有可能得到超过你需求的实体.这不但增加了内存占用,而且还影响了

jquery load加载页面内ajax返回的div不能响应页面js的问题的解决方案

1. 前言 由于项目需要,需要load一个页面并保持ajax返回的div能响应其页面内的JS的click事件.这个不是 解决用jquery load加载页面到div时,不执行页面js的问题 这类问题,因为并无这个问题存在(jquery版本:1.10.2.js). 2. 本质原因 假定页面内有$(.btn1).click(function(){})事件,你手动复制一个包含class为btn1的div到页面,然后会发现你点击那个div,并不会被响应,如果你在console执行$(.btn1)确实有包

【JS】【9】使用jQuery动态加载js文件

正文: 用法: jQuery.getScript("/path/to/myscript.js") .done(function() { /* 耶,没有问题,这里可以干点什么 */ }) .fail(function() { /* 靠,马上执行挽救操作 */ }); 例子:延迟加载一个js插件,而且在加载完成时执行它 jQuery.getScript("jquery.cookie.js") .done(function() { jQuery.cookie("