`
dyccsxg
  • 浏览: 205232 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类

jQuery 替我们做了什么

 
阅读更多
1. 兼容性
例如:要获取一个 div 元素的内容
   // 原生 js 写法
   document.getElementById("div1").innerText;  // for IE
   document.getElementById("div1").textContent;// for Firefox (innerText 在Firefox 中不支持)
   // jQuery 写法
   $("#div1").text();
# jQuery 可以兼容多种浏览器,具体请参见 http://jquery.com/browser-support/

2. 判断浏览器
   // 原生 js 写法
   if (window.ActiveXObject) {
     alert("IE");
   }
   if (navigator.userAgent.toLowerCase().indexOf("firefox") != -1) {
     alert("Firefox");
   }
   // jQuery 写法 (需要插件 https://github.com/jquery/jquery-migrate)
   if ($.browser.msie) {
     alert("IE");
   }
   if ($.browser.mozilla) {
     alert("Firefox");
   }
3. onload, onunload -> ready
# onload 页面加载完成时触发
# onunload 页面关闭时触发
   // 原生 js 写法
   window.onload = function() {
       alert("div1 innerHTML = " + document.getElementById("div1").innerHTML);
   }
   window.onbeforeunload = function(event) {
       return "您确定要离开吗?";
   }
   // jQuery 写法
   $(document).ready(function() {
       alert("div1 innerHTML = " + $("#div1").html());
   });
   $(window).bind("beforeunload", function() {
       return "您确定要离开吗?";
   });
4. 事件绑定与解除
   // 原生 js 写法
   document.getElementById("div1").onclick = function () {
       alert(this.innerHTML);
       this.onclick = null;
   };
   // or
   var div1 = document.getElementById("div1");
   if (div1.attachEvent) {
       div1.attachEvent('onclick', function(){
           alert(div1.innerHTML);
           div1.detachEvent('onclick', arguments.callee);
       });
   } else {
       div1.addEventListener('click', function(){
           alert(div1.innerHTML);
           div1.removeEventListener('click', arguments.callee);
       });
   }
   // jQuery 写法
   $("#div1").bind("click", function(){
       alert($(this).html());
       $(this).unbind("click");
   });
5. 操作 cookie
   // 原生 js 写法
   function addCookie(name, value, expireDays) {
       if (expireDays == null) {
           document.cookie = name + "=" + escape(value);
       } else {
           var expires = new Date();
           expires.setTime(expires.getTime() + expireDays*24*60*60*1000);
           document.cookie = name + "=" + escape(value) + ";expires=" + expires.toUTCString();
       }
   }
   function delCookie(name) {
       document.cookie = name + "=;expires=" + (new Date(0).toUTCString());
   }
   function readCookie() {
       var result = "";
       var cookies = document.cookie.split("; ");
       for (var i=0; i<cookies.length; i++) {
           var cookie = cookies[i].split("=");
           result += cookie[0] + "=" + unescape(cookie[1]) + "\n";
       }
       return result;
   }
   // jQuery 写法 (需要插件 https://github.com/carhartl/jquery-cookie)
   $.cookie('name1', 'value1');
   $.removeCookie('name1');
   alert(JSON.stringify($.cookie()));
6. 属性
   // 原生 js 写法
   document.getElementById("sp1").setAttribute("attrName1", "value1");
   alert(document.getElementById("sp1").getAttribute("attrName1"));
   // jQuery 写法
   $("#sp1").attr("attrName1", "value1");
   alert($("#sp1").attr("attrName1"));
7. DOM 元素
   // 原生 js 写法
   var div1 = document.getElementById("div1");
   // 创建
   var sp2 = document.createElement("span"); 
   sp2.setAttribute("id", "sp2");
   sp2.innerHTML = "This is a span element2.";
   // 增加
   div1.innerHTML = '<span id="sp1">This is a span element1.</span>';
   div1.appendChild(sp2);
   // 删除
   sp2.parentNode.removeChild(sp2);     // 删除节点 sp2
   div1.innerHTML = "";                 // 清空 div1 的内容
   // jQuery 写法
   $("#div1").html('<span id="sp1">This is a span element1.</span>');
   $("#div1").append('<span id="sp2">This is a span element2.</span>');
   $("#sp2").remove();                  // 删除节点 sp2
   $("#div1").empty();                  // 清空 div1 的内容
8. Ajax
   // 原生 js 写法
   function loadData(method, url, params, callback) {
     var request = null;
     if (window.XMLHttpRequest) {
       request = new XMLHttpRequest();
     } 
     else if (window.ActiveXObject) {
       request = new ActiveXObject("Microsoft.XMLHTTP");
     }
     if (request == null) {
       return;
     }
     request.onreadystatechange = callback;
     request.open(method, url, true);
     request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
     request.send(params);
   }
   loadData("GET", "menu.json", null, function(){
     if (this.readyState == 4 && this.status == 200) {
       alert(this.responseText);
     }
   });
   // jQuery 写法
   $.get("menu.json", null, function(data) {
     alert(data);
   }, "text");
9. 大量的 jQuery 插件
[zTree jQuery树插件] http://www.ztree.me/v3/main.php#_zTreeInfo
[jQuery 插件库] http://www.sd131.com/
[jQuery 插件1] http://www.oschina.net/project/tag/273/jquery/
[jQuery 插件2] http://developer.51cto.com/art/201102/245390.htm

# 相关链接
http://jquery.com/download/
http://www.ichartjs.com/
http://dyccsxg.iteye.com/blog/771832
分享到:
评论

相关推荐

    jquery无刷替换图片

    在这个“jquery无刷替换图片”的项目中,我们主要关注的是如何利用jQuery来实现在不刷新页面的情况下替换网页上的图片。这种功能在新闻网站、电子商务平台或者任何需要动态更新图片内容的场景中非常实用,比如实时...

    jquery替换节点

    例如,如果我们有一个ID为"oldElement"的元素需要被新的HTML内容替换,我们可以这样做: ```javascript $("#oldElement").replaceWith("这是新的内容&lt;/div&gt;"); ``` 这将把ID为"oldElement"的元素替换为新的`&lt;div&gt;`...

    JQuery实现图片拖拽替换效果

    在本文中,我们将深入探讨如何使用JQuery库来实现一个有趣的交互功能——图片拖拽替换效果。这个功能允许用户通过拖放操作来替换页面上的图片,增强了用户体验并提供了直观的界面交互。 首先,我们需要理解JQuery的...

    jquery-migrate

    jQuery 迁移插件, Migrate 有两个版本。jquery-migrate-1.4.1版本将帮助您将 1.9 之前的 jQuery 代码更新到 jQuery 1.9 到 3.0。 jquery-migrate-3.4.0版本将帮助您更新代码以在 jQuery 3.0 或更高版本上运行。 ...

    jquery1.2.3到3.3.1版本都有

    jquery1.2.3到3.3.1版本都有: jquery-1.10.2.min.js jquery-1.11.1.min.js jquery-1.11.3.min.js jquery-1.2.3.min.js jquery-1.3.2.min.js jquery-1.4.2.min.js jquery-1.4.4.min.js jquery-1.5.2.min.js jquery-...

    jquery图片栅格替换效果.rar

    接下来,我们需要引入jQuery库。如果您的项目还没有包含jQuery,可以添加以下链接到部分: ```html &lt;script src="https://code.jquery.com/jquery-3.6.0.min.js"&gt;&lt;/script&gt; ``` 然后,编写jQuery代码来处理图片...

    jquery图片栅格替换效果.rar_jquery图片栅格替换效果

    首先,我们需要理解jQuery的基本用法。jQuery的核心功能是选择DOM元素,操作这些元素,以及绑定事件处理函数。在实现图片栅格替换效果中,我们主要会用到`$(selector).hover()`方法来监听鼠标悬停事件,以及`$...

    jquery 插件 经典jquery 图片代替文字

    首先,我们需要理解为什么需要“图片代替文字”。在网页设计中,图像往往比文字更能吸引用户的注意力,但是加载大量图片可能会增加页面的加载时间,对于网络速度较慢或者移动设备用户来说,这可能是个问题。此外,...

    jquery.inputer 完美替换select控件 带模糊搜索

    1.jquery.inputer为替代select控件开发! 2.本控件经过测试,兼容IE,火狐! 3.本控件可以自由扩展! 4.本控件为原创,代码有些凌乱,但功能齐全! ---本控件代码为本人编写,完全处于分享拿出来的,有什么地方写的...

    jquery uploadify 以及swfobject.js

    首先,我们来了解jQuery Uploadify。它是一个基于jQuery的插件,主要功能是实现多文件上传。jQuery Uploadify 3.1版在之前的版本基础上进行了优化,提供了更加稳定和高效的服务。它支持批量上传,用户可以选择多个...

    jquery写的html有过渡效果的图片浏览

    这里我们讨论的是一种利用jQuery库实现的HTML图片浏览方案,它能在用户切换图片时提供平滑、自然的过渡动画。 【描述】:“这个HTML图片浏览解决方案具有简洁的代码结构,使得开发人员能够快速、方便地为网站添加...

    jquery.lazyload图片预加载效果 jquery预加载

    总之,jQuery LazyLoad是一个强大的图片预加载工具,通过它我们可以有效地提升网页性能,优化用户体验。无论是在移动设备还是桌面端,它都能发挥出显著的效果,是现代网页开发中的一个不可或缺的工具。熟练掌握并...

    jQuery替换字符串(实例代码)

    在本节中,我们将详细探讨如何使用jQuery来替换字符串,并通过实例代码进行演示。字符串替换是一个常用的编程操作,尤其在处理用户输入数据或者进行文本处理时显得尤为重要。 首先,我们要了解JavaScript原生提供了...

    jquery之div添加取消及内容替换demo.rar

    jQuery允许我们通过选择器来选取特定的元素。例如,我们可以使用`$("#content1")`来选取ID为`content1`的div。以下是一些基本操作的示例: 1. **添加div**:如果你希望在某个元素后添加新的div,可以使用`append()`...

    Jquery图片定时切换展示

    标题"Jquery图片定时切换展示"表明我们要讨论的是如何利用JQuery来自动更换网页上的显示图片,以达到类似幻灯片的效果。这个效果通常用于产品展示、新闻轮播或者背景图片切换等场景。 描述中的"实现网页图片定时...

    jquery123 网站镜像

    **jQuery 123 网站镜像详解** jQuery 是一个广泛使用的JavaScript库,它极大地简化了JavaScript的DOM操作、事件处理、动画设计以及Ajax交互。jQuery 123 网站镜像提供了完整的jQuery中文帮助文档,是开发者学习和...

    jQuery实现点击替换图片.zip

    接下来,我们要在CSS中做一些样式设置,以确保页面的美观性。例如,我们可以为按钮添加一些样式: ```css #replace-btn { margin-top: 10px; padding: 5px 10px; background-color: #337ab7; color: white; ...

    jquery的jar包 入门基础

    在提供的压缩包文件中,我们可以看到多个jQuery的API参考手册(如JQuery1.5API.chm和jQueryAPI-100214.chm),这些文档详细介绍了jQuery的所有方法、属性和选择器,是学习和查阅的好资源。此外,还有一些HTML文件...

    jquery-3.5.1.zip

    本次我们将深入探讨jQuery 3.5.1版本,了解其核心特性、使用方法以及在实际项目中的应用。 一、jQuery的核心理念 jQuery的设计目标是简化HTML文档遍历、事件处理、动画和Ajax交互等常见的JavaScript任务。它的出现...

    jquery-ui插件

    在本文中,我们将深入探讨jQuery UI的特性、使用方法以及如何在项目中集成和自定义它。 ### 1. jQuery UI的主要组件 jQuery UI包含了多个可复用的UI组件,这些组件可以帮助开发者快速构建具有专业外观和交互性的...

Global site tag (gtag.js) - Google Analytics