分享12個實用的jQuery代碼片段

字號:


    jQuery是一款優(yōu)秀的JavaScript庫,它在WEB開發(fā)者和網(wǎng)頁設(shè)計師中非常出名,幫助網(wǎng)頁設(shè)計師開發(fā)出很多有創(chuàng)意和漂亮的WEB頁面。
    本文主要分享了12個有用的jQuery技巧,具體內(nèi)容如下
    下面是我收集的一些小技巧,這些技巧將幫助你提高你網(wǎng)站布局和應(yīng)用的創(chuàng)意性以及功能性。
    一、在新窗口打開鏈接
    用這個代碼,你點擊超文本鏈接時會在新窗口中打開,為用戶帶來更好的體驗:
    $(document).ready(function() {
     //select all anchor tags that have http in the href
     //and apply the target=_blank
     $("a[href^='http']").attr('target','_blank');
    });
    二、設(shè)定計時器
    $(document).ready(function() {
     window.setTimeout(function() {
     // some code
     }, 500);
    });
    三、設(shè)置等高的列
    使用下面的代碼,可以使得你的網(wǎng)頁應(yīng)用每一列高度都一樣:
    <div>
     <p>First Line</p>
     <p>Second Line</p>
     <p>Third Line</p>
    </div>
    <div>
     <p>Column Two</p>
    </div>
    <script src="http://apps.bdimg.com/libs/jquery/1.11.1/jquery.min.js"></script>
    <script>
    $(document).ready(function() {
     equalHeight('.equalHeight');
    });
    //global variable, this will store the highest height value
    var maxHeight = 0;
    function equalHeight(col) {
     //Get all the element with class = col
     col = $(col);
     //Loop all the col
     col.each(function() {
     //Store the highest value
     if ($(this).height() > maxHeight) {
     maxHeight = $(this).height();
     }
     });
     //Set the height
     col.height(maxHeight);
    }
    </script>
    四、jQuery預(yù)加載圖像
    這個技巧可以加快網(wǎng)頁加載圖片的速度:
    jQuery.preloadImagesInWebPage = function() {
     for (var ctr = 0; ctr & lt; arguments.length; ctr++) {
     jQuery("").attr("src", arguments[ctr]);
     }
    }
    // 使用方法:
    $.preloadImages("image1.gif", "image2.gif", "image3.gif");
    // 檢查圖片是否被加載
    $('#imageObject').attr('src', 'image1.gif').load(function() {
     alert('The image has been loaded…');
    });
    五、把元素定位到頁面中間
    <div id="foo"></div>
    <script src="http://apps.bdimg.com/libs/jquery/1.11.1/jquery.min.js"></script>
    <script type="text/javascript">
    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;
    }
    //Use the above function as:
    $('#foo').center();
    </script>
    六、禁用鼠標(biāo)右鍵
    $(document).ready(function() {
     //catch the right-click context menu
     $(document).bind("contextmenu", function(e) {
     //warning prompt - optional
     alert("No right-clicking!");
     //delete the default context menu
     return false;
     });
    });
    七、計算子元素的個數(shù)
    <div id="foo">
     <div id="bar"></div>
     <div id="baz">
     <div id="biz"></div>
     <span><span></span></span>
     </div>
    </div>
    <script src="http://apps.bdimg.com/libs/jquery/1.11.1/jquery.min.js"></script>
    <script type="text/javascript">
     //jQuery code to count child elements $("#foo > div").size()
    alert($("#foo > div").size())
    </script>
    八、更改樣式列表
    這段代碼將幫助你更改樣式列表。
    $(document).ready(function() {
    $("a.cssSwap").click(function() { 
    //swap the link rel attribute with the value in the rel 
    $('link[rel=stylesheet]').attr('href' , $(this).attr('rel')); 
    }); 
    });
    九、使用jQuery設(shè)定文本大小
    加入這段代碼,用戶可根據(jù)需求重新設(shè)定文本尺寸(增加或減少)。
    $(document).ready(function() {
     //find the current font size
     var originalFontSize = $('html').css('font-size');
    //Increase the text size
     $(".increaseFont").click(function() {
     var currentFontSize = $('html').css('font-size');
     var currentFontSizeNumber = parseFloat(currentFontSize, 10);
    var newFontSize = currentFontSizeNumber*1.2;
     $('html').css('font-size', newFontSize);
     return false;
     });
    //Decrease the Text Size
     $(".decreaseFont").click(function() {
     var currentFontSize = $('html').css('font-size');
     var currentFontSizeNum = parseFloat(currentFontSize, 10);
    var newFontSize = currentFontSizeNum*0.8;
     $('html').css('font-size', newFontSize);
     return false;
     });
    // Reset Font Size
     $(".resetFont").click(function(){
     $('html').css('font-size', originalFontSize);
     });
     });
    十、檢測當(dāng)前鼠標(biāo)坐標(biāo)
    使用這個JS代碼,你可以在任何瀏覽器里獲取鼠標(biāo)坐標(biāo)。
    $(document).ready(function() {
    $().mousemove(function(e)
    {
    $('# MouseCoordinates ').html("X Axis Position = " + e.pageX + " and Y Axis Position = " + e.pageY);
    });
    十一、獲取鼠標(biāo)指針的X / Y軸
    $().mousemove(function(e){
    //display the x and y axis values inside the P element
    $('p').html("X Axis : " + e.pageX + " | Y Axis " + e.pageY);
    });
    十二、返回到頂部鏈接
    此代碼對于比較長的頁面非常實用,用戶不必拉滾動條來返回頂部,直接點擊“返回頂部”即可。
    $(document).ready(function() {
    //when the id="top" link is clicked
    $('#top').click(function() {
    //scoll the page back to the top
    $(document).scrollTo(0,500);
    }
    });
    jQuery是JavaScript最好的庫之一,支持Ajax及HTML 腳本客戶端,主要用于事件處理及制作動畫。另外,jQuery還擁有各種插件,可以讓開發(fā)者在最快的時間內(nèi)創(chuàng)建網(wǎng)頁。
    希望本文所述對大家學(xué)習(xí)jquery程序設(shè)計有所幫助。