程序猿都要了解的35个 jQuery 小技巧(下)

发布来源:沙漠风网站建设公司

发布时间:2016.11.25

收集的35个 jQuery 小技巧/代码片段,可以帮你快速开发.


17.阻止链接加载


有时你不希望链接到某个页面或者重新加载它,你可能希望它来做一些其他事情或者触发一些其他脚本,你可以这么做:

$('a.no-link').click(function (e) {
  e.preventDefault();
});
18.切换 fade/slide

fade 和 slide 是我们在 jQuery 中经常使用的动画效果,它们可以使元素显示效果更好。但是如果你希望元素显示时使用种效果,而消失时使用第二种效果,则可以这么做:

// Fade
$('.btn').click(function () {
  $('.element').fadeToggle('slow');
});
// Toggle
$('.btn').click(function () {
  $('.element').slideToggle('slow');
});
19.简单的手风琴效果

这是一个实现手风琴效果快速简单的方法:

// Close all panels
$('#accordion').find('.content').hide();
// Accordion
$('#accordion').find('.accordion-header').click(function () {
  var next = $(this).next();
  next.slideToggle('fast');
  $('.content').not(next).slideUp('fast');  return false;
});
20.让两个 DIV 高度相同

有时你需要让两个 div 高度相同,而不管它们里面的内容多少。可以使用下面的代码片段:

var $columns = $('.column');var height = 0;
$columns.each(function () {
  if ($(this).height() > height) {
    height = $(this).height();
  }
});
$columns.height(height);
这段代码会循环一组元素,并设置它们的高度为元素中的大高。
21. 验证元素是否为空

This will allow you to check if an element is empty.

$(document).ready(function() {
  if ($('#id').html()) {
     // do something
   }
});
22. 替换元素

Want to replace a div, or something else?

$(document).ready(function() {
   $('#id').replaceWith('
<DIV>I have been replaced</DIV>

');
});
23. jQuery延时加载功能

Want to delay something?

$(document).ready(function() {
   window.setTimeout(function() {
        // do something
   }, 1000);
});
24. 移除单词功能

Want to remove a certain word(s)?

$(document).ready(function() {
   var el = $('#id');
   el.html(el.html().replace(/word/ig, ""));
});
25. 验证元素是否存在于jquery对象集合中

Simply test with the .length property if the element exists.

$(document).ready(function() {
   if ($('#id').length) {
     // do something
  }
});
26. 使整个DIV可点击

Want to make the complete div clickable?

$(document).ready(function() {
    $("div").click(function(){
          //get the url from href attribute and launch the url
      window.location=$(this).find("a").attr("href"); return false;
    });// how to use<DIV><A href="index.html">home</A></DIV>});
27. ID与Class之间转换

当改变Window大小时,在ID与Class之间切换

$(document).ready(function() {
   function checkWindowSize() {
       if ( $(window).width() > 1200 ) {
        $('body').addClass('large');
    }    else {
        $('body').removeClass('large');
    }
   }
$(window).resize(checkWindowSize);
});
28. 克隆对象

Clone a div or an other element.

$(document).ready(function() {
   var cloned = $('#id').clone();// how to use<DIV id=id></DIV>});
29. 使元素居屏幕中间位置

Center an element in the center of your screen.

$(document).ready(function() {
  jQuery.fn.center = function () {
        this.css("position","absolute");
              this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px");
                    this.css("left", ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + "px");
                          return this;
  }
  $("#id").center();
});
30. 写自己的选择器

Write your own selectors.

$(document).ready(function() {
   $.extend($.expr[':'], {
       moreThen1000px: function(a) {
                  return $(a).width() > 1000;
      }
   });
  $('.box:moreThen1000px').click(function() {
        // creating a simple js alert box
      alert('The element that you have clicked is over 1000 pixels wide');
  });
});
31. 统计元素个数

Count an element.

$(document).ready(function() {
   $("p").size();
});
32. 使用自己的 Bullets

Want to use your own bullets instead of using the standard or images bullets?

$(document).ready(function() {
   $("ul").addClass("Replaced");
   $("ul > li").prepend("‒ "); // how to use
 ul.Replaced { list-style : none; }
});
33. 引用Google主机上的Jquery类库

Let Google host the jQuery script for you. This can be done in 2 ways.

//Example 1
<SCRIPT src="http://www.google.com/jsapi"></SCRIPT>
<SCRIPT type=text/javascript>
google.load("jquery", "1.2.6");
google.setOnLoadCallback(function() {
    // do something
});
</SCRIPT><SCRIPT type=text/javascript src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></SCRIPT>
 // Example 2:(the best and fastest way)
<SCRIPT type=text/javascript src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></SCRIPT>
34. 禁用Jquery(动画)效果

Disable all jQuery effects

$(document).ready(function() {
    jQuery.fx.off = true;
});
35. 与其他Javascript类库冲突解决方案

To avoid conflict other libraries on your website, you can use this jQuery Method, and assign a different variable name instead of the dollar sign.

$(document).ready(function() {
   var $jq = jQuery.noConflict();
   $jq('#id').show();

});


程序猿都要了解的35个 jQuery 小技巧(上)

TAG:
相关资讯
多一份参考,总有益处
联系沙漠风,免费获得专属定制《策划方案》及网站建设、网站设计、网站制作报价
深圳网站建设

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线400-611-9921大客户专线158-1856-1755

提交需求提交需求

提交需求
热线
微信扫码咨询
电话咨询
微信
业务热线
提交需求
官方微信
准备好开始了吗,
那就与我们取得联系吧
400-688-6062
有更多服务咨询,请联系我们
请填写您的需求
您希望我们为您提供什么服务呢
您的预算