源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

14个有用的Jquery技巧分享

  • 时间:2020-01-07 11:20 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:14个有用的Jquery技巧分享
[b]1.通过方法返回Jquery对象实例[/b] 用 var someDiv = $(‘#someDiv').hide();  代替 var someDiv = $(‘#someDiv');  someDiv.hide(); [b]2.使用find来查找[/b] 用 $(‘#someDiv').find(‘p.someClass').hide();   代替 $(‘#someDiv p.someClass').hide();因为可以不必触发Jquery的Sizzle引擎,同时在写选择符的时候尽量让您的选择符简单同时优化最右边的选择符 [b]3.不要滥用$(this)[/b] 用 $(‘#someAnchor').click(function() {  alert( this.id );  }); 代替 $(‘#someAnchor').click(function() {alert($(this).attr(‘id'));}); [b]4.ready的简写形式[/b] 用 $(function() { }); 代替 $(document).ready(function() {}); [b]5.让你的代码安全[/b] 方法1(使用noConflict)
[u]复制代码[/u] 代码如下:
var j = jQuery.noConflict(); j(‘#someDiv').hide(); // The line below will reference some other library's $ function. $(‘someDiv').style.display = ‘none';
方法2(传入参数Jquery)
[u]复制代码[/u] 代码如下:
(function($) { // Within this function, $ will always refer to jQuery })(jQuery);
方法3(通过ready方法)
[u]复制代码[/u] 代码如下:
jQuery(document).ready(function($) { // $ refers to jQuery });
[b]6.简化代码[/b] 用each代替for,使用数组保存临时变量,使用document fragment,这其实和写原生的Javascript需要注意的一样。 [b]7.使用Ajax的方法[/b] Jquery提供了get getJSON post ajax这些有用的ajax方法 [b]8.访问原生的属性和方法 [/b]比如获取元素id的方法有
[u]复制代码[/u] 代码如下:
// OPTION 1 – Use jQuery var id = $(‘#someAnchor').attr(‘id'); // OPTION 2 – Access the DOM element var id = $(‘#someAnchor')[0].id; // OPTION 3 – Use jQuery's get method var id = $(‘#someAnchor').get(0).id; // OPTION 3b – Don't pass an index to get anchorsArray = $(‘.someAnchors').get(); var thirdId = anchorsArray[2].id;
[b]9.使用PHP来检查Ajax请求[/b] 通过使用xhr.setRequestHeader(“X-Requested-With”, “XMLHttpRequest”);  服务器端如PHP就可以通过
[u]复制代码[/u] 代码如下:
function isXhr() { return $_SERVER['HTTP_X_REQUESTED_WITH'] === ‘XMLHttpRequest'; }
来检查是不是Ajax请求,在一些禁用Javascript的情况下可能会用到 [b]10.Jquery和$的关系[/b] 在Jquery代码的最下面,可以看到下面的代码 window.jQuery = window.$ = jQuery;  $其实就是Jquery的一个shortcut [b]11.条件加载Jquery [/b]
[u]复制代码[/u] 代码如下:
<!– Grab Google CDN jQuery. fall back to local if necessary –> <script src=”http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js”></script> <script>!window.jQuery && document.write(‘<script src=”js/jquery-1.4.2.min.js”><\/script>')</script>
如果CDN没有下载到Jquery,则从本地读取 [b]12.Jquery Filters [/b]
[u]复制代码[/u] 代码如下:
<script> $(‘p:first').data(‘info', ‘value'); // populates $'s data object to have something to work with $.extend( jQuery.expr[":"], { block: function(elem) { return $(elem).css(“display”) === “block”; }, hasData : function(elem) { return !$.isEmptyObject( $(elem).data() ); } } ); $(“p:hasData”).text(“has data”); // grabs paras that have data attached $(“p:block”).text(“are block level”); // grabs only paragraphs that have a display of “block” </script>
注:$.expr[":"]等价于$.expr.filters [b]13.hover方法[/b]
[u]复制代码[/u] 代码如下:
$(‘#someElement').hover(function() { //在这里可以使用toggle方法来实现滑过和滑出的效果 });
[b]14.传入属性对象[/b] 当创建一个元素的时候,Jquery1.4可以传入一个属性对象
[u]复制代码[/u] 代码如下:
$(‘</a>', { id : ‘someId', className : ‘someClass', href : ‘somePath.html' });
甚至是Jquery指定的属性或事件如text, click
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部