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

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

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

    我的家園

    我的家園

    HTML5的革新:結構之美

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

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

            下面的jQuery代碼會找尋目標圖像并生成一個灰度的版本。當鼠標懸浮在圖像上,代碼將會把灰度圖像漸變為彩色的。

     

    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
        * 粘貼以上的代碼
        * 設置目標圖像(例如.post-img, img, .gallery img等等)
        * 你可以更改動畫的速度(例如1000=1秒)

    兼容性

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


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


    網站導航:
     
    主站蜘蛛池模板: www.xxxx.com日本免费| 精品国产日韩亚洲一区在线| 日韩免费视频一区二区| 国产日韩成人亚洲丁香婷婷| 免费人成网上在线观看| 久久精品国产亚洲5555| yellow视频免费在线观看| 亚洲香蕉成人AV网站在线观看| 丰满妇女做a级毛片免费观看| 免费在线观看你懂的| 成年大片免费视频播放一级| 亚洲日韩中文在线精品第一| 亚欧国产一级在线免费| 亚洲国产精品无码专区在线观看| 怡红院免费全部视频在线视频| 久久久久久a亚洲欧洲aⅴ| 精品成人免费自拍视频| 亚洲网站免费观看| 人禽杂交18禁网站免费| 国产亚洲人成在线播放| 亚洲情侣偷拍精品| 久久青草免费91线频观看站街| 91在线精品亚洲一区二区| 最新欧洲大片免费在线| 污视频网站免费观看| 亚洲日韩v无码中文字幕| 91福利视频免费观看| jlzzjlzz亚洲jzjzjz| 国产片免费在线观看| 最新久久免费视频| 亚洲国产成人久久77| 免费国产成人午夜私人影视 | 亚洲精品无码专区在线| 午夜亚洲福利在线老司机| 中国好声音第二季免费播放| 亚洲欧洲国产精品久久| 国产zzjjzzjj视频全免费| 精品国产污污免费网站| 亚洲av无码有乱码在线观看| 亚洲日韩欧洲无码av夜夜摸| 99久久久精品免费观看国产|