<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的家園

    我的家園

    HTML5的革新:結(jié)構(gòu)之美

    Posted on 2012-04-15 16:37 zljpp 閱讀(103) 評論(0)  編輯  收藏

      這個示例的目的是向你展示如何使用HTML5和jQuery創(chuàng)建一個灰度/彩色圖像的鼠標(biāo)懸浮效果。在HTML5出現(xiàn)前,實現(xiàn)這個效果需要兩幅圖像,彩色的和灰度的版本。現(xiàn)在HTML5讓創(chuàng)建這個效果更加容易和高效,因為灰色圖像將會直接從原始文件生成。我希望你會發(fā)現(xiàn)這個腳本在例如陳列櫥或者相片冊的設(shè)計里相當(dāng)有用。

            下面的jQuery代碼會找尋目標(biāo)圖像并生成一個灰度的版本。當(dāng)鼠標(biāo)懸浮在圖像上,代碼將會把灰度圖像漸變?yōu)椴噬摹?/p>

     

    1. <mce:script src="jquery.min.js" mce_src="jquery.min.js" type="text/javascript"></mce:script>  
    2. <mce:script type="text/javascript"><!--  
    3.    
    4.         // On window load. This waits until images have loaded which is essential  
    5.         $(window).load(function(){  
    6.    
    7.                // Fade in images so there isn't a color "pop" document load and then on window load  
    8.                $(".item img").fadeIn(500);  
    9.    
    10.                // clone image  
    11.                $('.item img').each(function(){  
    12.                        var el = $(this);  
    13.                        el.css({"position":"absolute"}).wrap("<div class='img_wrapper' string">" mce_string">">").clone().addClass('img_grayscale').css({"position":"absolute","z-index":"998","opacity":"0"}).insertBefore(el).queue(function(){  
    14.                                var el = $(this);  
    15.                                el.parent().css({"width":this.width,"height":this.height});  
    16.                                el.dequeue();  
    17.                        });  
    18.                        this.src = grayscale(this.src);  
    19.                });  
    20.    
    21.                // Fade image  
    22.                $('.item img').mouseover(function(){  
    23.                        $(this).parent().find('img:first').stop().animate({opacity:1}, 1000);  
    24.                })  
    25.                $('.img_grayscale').mouseout(function(){  
    26.                        $(this).stop().animate({opacity:0}, 1000);  
    27.                });  
    28.         });  
    29.    
    30.         // Grayscale w canvas method  
    31.         function grayscale(src){  
    32.                var canvas = document.createElement('canvas');  
    33.                var ctx = canvas.getContext('2d');  
    34.                var imgObj = new Image();  
    35.                imgObj.src = src;  
    36.                canvas.width = imgObj.width;  
    37.                canvas.height = imgObj.height;  
    38.                ctx.drawImage(imgObj, 0, 0);  
    39.                var imgPixels = ctx.getImageData(0, 0, canvas.width, canvas.height);  
    40.                for(var y = 0; y < imgPixels.height; y++){  
    41.                        for(var x = 0; x < imgPixels.width; x++){  
    42.                                var i = (y * 4) * imgPixels.width + x * 4;  
    43.                                var avg = (imgPixels.data[i] + imgPixels.data[i + 1] + imgPixels.data[i + 2]) / 3;  
    44.                                imgPixels.data[i] = avg;  
    45.                                imgPixels.data[i + 1] = avg;  
    46.                                imgPixels.data[i + 2] = avg;  
    47.                        }  
    48.                }  
    49.                ctx.putImageData(imgPixels, 0, 0, 0, 0, imgPixels.width, imgPixels.height);  
    50.                return canvas.toDataURL();  
    51.     }  
    52.    
    53. // --></mce:script> 

     如何使用

        * 引用jQuery.js
        * 粘貼以上的代碼
        * 設(shè)置目標(biāo)圖像(例如.post-img, img, .gallery img等等)
        * 你可以更改動畫的速度(例如1000=1秒)

    兼容性

            可以工作在任何支持HTML5和Javascript的瀏覽器上,例如Chrome、Safari和Firefox。如果瀏覽器不支持HTML5,這個效果將會退回到原始的彩色圖片。注意:如果本地文件在Firefox和Chrome上不工作,你必須要把HTML代碼放到一個Web服務(wù)器上。


    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 可以免费观看一级毛片黄a| 国产激情免费视频在线观看| 国产精品无码免费播放| 亚洲中字慕日产2021| 嫩草在线视频www免费观看| 亚洲精品成人片在线观看精品字幕| 国产精品福利片免费看| 亚洲中文字幕无码爆乳AV| 久久毛片免费看一区二区三区| 亚洲日本在线观看视频| a毛片在线免费观看| 久久久久亚洲av无码尤物| 91视频免费网址| 亚洲三级视频在线| 永久免费bbbbbb视频| 日日摸夜夜添夜夜免费视频| 亚洲毛片αv无线播放一区| 久久精品视频免费播放| 亚洲成在人线电影天堂色| 毛片免费vip会员在线看| 色欲aⅴ亚洲情无码AV| 亚洲一区二区三区国产精品| 久久免费线看线看| 色老板亚洲视频免在线观| 国产成人免费一区二区三区| WWW国产成人免费观看视频| 亚洲欧洲日产国产综合网| 亚洲免费网站观看视频| 一日本道a高清免费播放| 亚洲Av无码精品色午夜| 男男AV纯肉无码免费播放无码| 亚洲av无码一区二区三区四区| 国产偷窥女洗浴在线观看亚洲| 91福利免费体验区观看区| 亚洲国产精品无码久久九九大片| 不卡精品国产_亚洲人成在线| 一级成人a毛片免费播放| 久久精品熟女亚洲av麻豆| 久久亚洲精品无码| 国产精品二区三区免费播放心 | 精品国产免费一区二区|