35 coretan kod jQuery yang mesti diketahui oleh pengaturcara

PHPz
Lepaskan: 2018-09-29 09:16:33
asal
1146 orang telah melayarinya

jQuery kini telah menjadi pustaka JavaScript yang paling popular dalam pembangunan web Melalui jQuery dan sejumlah besar pemalam, anda boleh mencapai pelbagai kesan cantik dengan mudah. Artikel ini akan memperkenalkan anda kepada beberapa kemahiran jQuery praktikal, dengan harapan dapat membantu anda menggunakan jQuery dengan lebih cekap.

Mengumpul 35 petua/coretan kod jQuery untuk membantu anda berkembang dengan cepat.

1 Lumpuhkan klik kanan

$(document).ready(function(){
  $(document).bind("contextmenu",function(e){
    return false;
  });
});
Salin selepas log masuk
<. 🎜>

2. Sembunyikan teks kotak teks carian

Hide when clicked in the search field, the value.(example can be found below in the comment fields)
$(document).ready(function() {
$("input.text1").val("Enter your search text here");
  textFill($(&#39;input.text1&#39;));
});
  function textFill(input){ //input focus text function
   var originalvalue = input.val();
   input.focus( function(){
     if( $.trim(input.val()) == originalvalue ){ input.val(&#39;&#39;); }
   });
   input.blur( function(){
     if( $.trim(input.val()) == &#39;&#39; ){ input.val(originalvalue); }
   });
}
Salin selepas log masuk

3 Buka pautan dalam tetingkap baharu

XHTML 1.0 Strict doesn&#39;t allow this attribute in the code, so use this to keep the code valid.
$(document).ready(function() {
  //Example 1: Every link will open in a new window
  $(&#39;a[href^="http://"]&#39;).attr("target", "_blank");
  //Example 2: Links with the rel="external" attribute will only open in a new window
  $(&#39;a[@rel$=&#39;external&#39;]&#39;).click(function(){
   this.target = "_blank";
  });
});
// how to useopen link
Salin selepas log masuk

4. Kesan pelayar

Nota: Dalam versi jQuery 1.4, $.support menggantikan pembolehubah $.browser

$(document).ready(function() {
// Target Firefox 2 and above
if ($.browser.mozilla && $.browser.version >= "1.8" ){
  // do something
}
// Target Safari
if( $.browser.safari ){
  // do something
}
// Target Chrome
if( $.browser.chrome){
  // do something
}
// Target Camino
if( $.browser.camino){
  // do something
}
// Target Opera
if( $.browser.opera){
  // do something
}
// Target IE6 and below
if ($.browser.msie && $.browser.version  6){
  // do something
}
});
Salin selepas log masuk

5 Pramuat imej

This piece of code will prevent the loading of all images, which can be useful if you have a site with lots of images.
$(document).ready(function() {
jQuery.preloadImages = function()
{
 for(var i = 0; i<ARGUMENTS.LENGTH; jQuery(?").attr("src", arguments[i]);
 }
}
// how to use
$.preloadImages("image1.jpg");
});
Salin selepas log masuk

6

7 Ketinggian lajur adalah sama
$(document).ready(function() {
  $("a.Styleswitcher").click(function() {
    //swicth the LINK REL attribute with the value in A REL attribute
    $(&#39;link[rel=stylesheet]&#39;).attr(&#39;href&#39; , $(this).attr(&#39;rel&#39;));
  });
// how to use
// place this in your header// the linksDefault ThemeRed ThemeBlue Theme});
Salin selepas log masuk

Jika dua lajur CSS digunakan, kaedah ini boleh digunakan untuk menjadikan ketinggian dua lajur sebagai sama .

8 Kawal saiz fon halaman secara dinamik
$(document).ready(function() {
function equalHeight(group) {
  tallest = 0;
  group.each(function() {
    thisHeight = $(this).height();
    if(thisHeight > tallest) {
      tallest = thisHeight;
    }
  });
  group.height(tallest);
}
// how to use
$(document).ready(function() {
  equalHeight($(".left"));
  equalHeight($(".right"));
});
});
Salin selepas log masuk

Pengguna boleh menukar saiz fon halaman

9 Kembali ke fungsi teratas halaman
$(document).ready(function() {
 // Reset the font size(back to default)
 var originalFontSize = $(&#39;html&#39;).css(&#39;font-size&#39;);
  $(".resetFont").click(function(){
  $(&#39;html&#39;).css(&#39;font-size&#39;, originalFontSize);
 });
 // Increase the font size(bigger font0
 $(".increaseFont").click(function(){
  var currentFontSize = $(&#39;html&#39;).css(&#39;font-size&#39;);
  var currentFontSizeNum = parseFloat(currentFontSize, 10);
  var newFontSize = currentFontSizeNum*1.2;
  $(&#39;html&#39;).css(&#39;font-size&#39;, newFontSize);
  return false;
 });
 // Decrease the font size(smaller font)
 $(".decreaseFont").click(function(){
  var currentFontSize = $(&#39;html&#39;).css(&#39;font-size&#39;);
  var currentFontSizeNum = parseFloat(currentFontSize, 10);
  var newFontSize = currentFontSizeNum*0.8;
  $(&#39;html&#39;).css(&#39;font-size&#39;, newFontSize);
  return false;
 });
});
Salin selepas log masuk

10 🎜>
For a smooth(animated) ride back to the top(or any location).
$(document).ready(function() {
$(&#39;a[href*=#]&#39;).click(function() {
 if (location.pathname.replace(/^\//,&#39;&#39;) == this.pathname.replace(/^\//,&#39;&#39;)
 && location.hostname == this.hostname) {
  var $target = $(this.hash);
  $target = $target.length && $target
  || $(&#39;[name=&#39; + this.hash.slice(1) +&#39;]&#39;);
  if ($target.length) {
 var targetOffset = $target.offset().top;
 $(&#39;html,body&#39;)
 .animate({scrollTop: targetOffset}, 900);
  return false;
  }
 }
 });
// how to use
// place this where you want to scroll to// the linkgo to top});
Salin selepas log masuk

11 Butang Kembali ke atas
Want to know where your mouse cursor is?
$(document).ready(function() {
  $().mousemove(function(e){
   //display the x and y axis values inside the div with the id XY
  $(&#39;#XY&#39;).html("X Axis : " + e.pageX + " | Y Axis " + e.pageY);
 });
// how to use});
Salin selepas log masuk
Anda boleh menggunakan animasi dan scrollTop untuk melaksanakan animasi kembali ke atas tanpa menggunakan pemalam lain.

Menukar nilai scrollTop boleh melaraskan jarak antara pemulangan dan bahagian atas, dan parameter kedua bagi animasi ialah masa yang diperlukan untuk melakukan tindakan pemulangan (unit: milisaat ).

// Back to top
$(&#39;a.top&#39;).click(function () {
 $(document.body).animate({scrollTop: 0}, 800);
 return false;
});
Back to top
Salin selepas log masuk
12 Pramuat imej

Jika halaman anda menggunakan banyak imej yang tidak kelihatan (seperti paparan tuding), anda mungkin perlu pramuatnya:

13 Periksa sama ada imej dimuatkan
$.preloadImages = function () {
 for (var i = 0; i < arguments.length; i++) {
  $(&#39;&#39;).attr(&#39;src&#39;, arguments[i]);
 }
};
$.preloadImages(&#39;img/hover1.png&#39;, &#39;img/hover2.png&#39;);
Salin selepas log masuk
Kadangkala anda perlu memastikan imej dimuatkan untuk melaksanakan operasi berikut: <🎜. >

Anda boleh menggantikan img dengan ID atau kelas lain untuk menyemak sama ada imej yang ditentukan dimuatkan.

14 Ubah suai imej yang rosak secara automatik
$(&#39;img&#39;).load(function () {
 console.log(&#39;image load successful&#39;);
});
Salin selepas log masuk

Jika anda kebetulan menemui pautan imej yang rosak di tapak web anda, anda boleh menggantikannya dengan imej yang tidak boleh digantikan dengan mudah. . Menambah kod mudah ini boleh menjimatkan banyak masalah kepada anda:

Walaupun tapak anda tidak mempunyai pautan imej yang rosak, tidak ada salahnya untuk menambahkan kod ini.

15 Tuding tetikus (legar) menukar atribut kelas
$(&#39;img&#39;).on(&#39;error&#39;, function () {
 $(this).prop(&#39;src&#39;, &#39;img/broken.png&#39;);
});
Salin selepas log masuk

Jika apabila pengguna menuding tetikus pada elemen boleh klik, anda ingin menukar kesannya, Kod berikut boleh menambah atribut kelas apabila ia berlegar di atas elemen, dan secara automatik membatalkan atribut kelas apabila pengguna menjauhkan diri dari tetikus:

Nota: Menggunakan CSS terus untuk mencapai kesan ini mungkin penyelesaian yang lebih baik, tetapi anda masih perlu mengetahui kaedahnya.

16. Lumpuhkan medan input
$(&#39;.btn&#39;).hover(function () {
 $(this).addClass(&#39;hover&#39;);
 }, function () {
  $(this).removeClass(&#39;hover&#39;);
 });
你只需要添加必要的CSS代码即可。如果你想要更简洁的代码,可以使用 toggleClass 方法:
$(&#39;.btn&#39;).hover(function () { 
 $(this).toggleClass(&#39;hover&#39;); 
});
Salin selepas log masuk

Kadangkala anda mungkin perlu melumpuhkan butang hantar borang atau medan input sehingga pengguna melakukan beberapa tindakan (contohnya, tandakan " Baca kotak semak istilah"). Anda boleh menambah atribut yang dilumpuhkan sehingga anda mahu mendayakannya:

Apa yang anda perlu lakukan ialah melaksanakan kaedah removeAttr dan masukkan atribut untuk dialih keluar sebagai parameter:


$(&#39;input[type="submit"]&#39;).prop(&#39;disabled&#39;, true);
Salin selepas log masuk
17 Halang pautan daripada dimuatkan


Kadang-kadang anda tidak mahu memaut ke halaman atau memuatkan semula, anda mungkin mahu ia melakukan sesuatu yang lain. atau mencetuskan sesuatu Untuk skrip lain, anda boleh melakukan ini:
$(&#39;input[type="submit"]&#39;).removeAttr(&#39;disabled&#39;);
Salin selepas log masuk


18 Tukar pudar/gelongsor

$(&#39;a.no-link&#39;).click(function (e) {
 e.preventDefault();
});
Salin selepas log masuk
pudar dan slaid ialah apa yang kami gunakan Kesan animasi sering digunakan dalam jQuery untuk menjadikan elemen kelihatan lebih baik. Tetapi jika anda mahu kesan pertama digunakan apabila elemen dipaparkan dan kesan kedua digunakan apabila ia hilang, anda boleh melakukan ini:


19. Kesan Akordion Mudah

// Fade
$(&#39;.btn&#39;).click(function () {
 $(&#39;.element&#39;).fadeToggle(&#39;slow&#39;);
});
// Toggle
$(&#39;.btn&#39;).click(function () {
 $(&#39;.element&#39;).slideToggle(&#39;slow&#39;);
});
Salin selepas log masuk
Berikut ialah cara cepat dan mudah untuk mencapai kesan akordion:


20. Jadikan dua DIV mempunyai ketinggian yang sama

// Close all panels
$(&#39;#accordion&#39;).find(&#39;.content&#39;).hide();
// Accordion
$(&#39;#accordion&#39;).find(&#39;.accordion-header&#39;).click(function () {
 var next = $(this).next();
 next.slideToggle(&#39;fast&#39;);
 $(&#39;.content&#39;).not(next).slideUp(&#39;fast&#39;);
 return false;
});
Salin selepas log masuk
Kadangkala anda perlu membuat dua div dengan ketinggian yang sama, tanpa mengira kandungan di dalamnya. Anda boleh menggunakan coretan kod berikut:

Kod ini akan melingkar melalui sekumpulan elemen dan menetapkan ketinggiannya kepada ketinggian maksimum antara elemen.

21 Sahkan sama ada elemen itu kosong
var $columns = $(&#39;.column&#39;);
var height = 0;
$columns.each(function () {
 if ($(this).height() > height) {
  height = $(this).height();
 }
});
$columns.height(height);
Salin selepas log masuk

22 🎜>

This will allow you to check if an element is empty.
$(document).ready(function() {
 if ($(&#39;#id&#39;).html()) {
  // do something
  }
});
Salin selepas log masuk
23 fungsi pemuatan tertunda jQuery

$(document).ready(function() {
  $(&#39;#id&#39;).replaceWith(&#39;I have been replaced&#39;);
});
Salin selepas log masuk
Fungsi penyingkiran perkataan

$(document).ready(function() {
  window.setTimeout(function() {
   // do something
  }, 1000);
});
Salin selepas log masuk
25 Sahkan sama ada elemen itu wujud dalam koleksi objek jquery

$(document).ready(function() {
  var el = $(&#39;#id&#39;);
  el.html(el.html().replace(/word/ig, ""));
});
Salin selepas log masuk
26 . Jadikan keseluruhan DIV boleh diklik

27. ID与Class之间转换

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

$(document).ready(function() {
  function checkWindowSize() {
  if ( $(window).width() > 1200 ) {
    $(&#39;body&#39;).addClass(&#39;large&#39;);
  }
  else {
    $(&#39;body&#39;).removeClass(&#39;large&#39;);
  }
  }
$(window).resize(checkWindowSize);
});
Salin selepas log masuk

28. 克隆对象

$(document).ready(function() {
  var cloned = $(&#39;#id&#39;).clone();
// how to use});
Salin selepas log masuk

29. 使元素居屏幕中间位置

$(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();
});
Salin selepas log masuk

30. 写自己的选择器

$(document).ready(function() {
  $.extend($.expr[&#39;:&#39;], {
    moreThen1000px: function(a) {
      return $(a).width() > 1000;
   }
  });
 $(&#39;.box:moreThen1000px&#39;).click(function() {
   // creating a simple js alert box
   alert(&#39;The element that you have clicked is over 1000 pixels wide&#39;);
 });
});
Salin selepas log masuk

31. 统计元素个数

$(document).ready(function() {
  $("p").size();
});
Salin selepas log masuk

32. 使用自己的 Bullets

$(document).ready(function() {
  $("ul").addClass("Replaced");
  $("ul > li").prepend("‒ ");
 // how to use
 ul.Replaced { list-style : none; }
});
Salin selepas log masuk

33. 引用Google主机上的Jquery类库

//Example 1
Salin selepas log masuk

34. 禁用Jquery(动画)效果

$(document).ready(function() {
  jQuery.fx.off = true;
});
Salin selepas log masuk

35. 与其他Javascript类库冲突解决方案

$(document).ready(function() {
  var $jq = jQuery.noConflict();
  $jq(&#39;#id&#39;).show();
});
Salin selepas log masuk

以上就是本章的全部内容,更多相关教程请访问jQuery视频教程

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!