js+css3文字模糊代碼


在寫文字模糊的時候要理清自己的思路,根據以下的步驟來:

  1. 對你要模糊的文字進行布局
    <body style="background:#ccc;">
    	<ul class="con">
    		<li><h2>我是box1</h2></li>
    		<li><h2>我是box2</h2></li>
    		<li><h2>我是box3</h2></li>
    	</ul>
    </body>
    
  2. 對你的布局設置css樣式
    .con{width:510px;margin:0 auto;list-style-type:none;margin-top:20px;}
    .con li{width:150px;height:150px;background:#fff;margin:10px;float:left;box-shadow:2px 2px 2px #999;-webkit-transition:0.5s all ease;}
    .con .fuzzy{-webkit-transform:scale(0.9); box-shadow:0 0 10px 4px white; text-shadow:0 0 10px black;opacity:0.8; color:rgba(0,0,0,0);}
    .con .amplification{-webkit-transform:scale(1.1);}

    /**
      其中:
    -webkit-transition:0.5s all ease;是會在0.5秒的時間執行li的所有指定的動畫
           text-shadow:0 0 10px black;這個是對文字設置黑色的陰影
           opacity:0.8;這個是整體的透明度

    color:rgba(0,0,0,0);這個是設置文字的顏色為黑色,然后是指其透明度為全部透明
       這幾條是必須要有得

    **/

     

  3. 現在是寫你的一些交互的js代碼
    window.onload=function(){
    	var ali = document.getElementsByTagName("li");                 //獲取li標簽
    	var timer = null;                                              //定義一個元素為空
    	var i=0;
    	for(i=0;i<ali.length;i++){                                     //對li進行遍歷
    		ali[i].onmouseover=function(){
    			clearTimeout(timer);                           //當鼠標移入到li的時候清除定時
    			for(i=0;i<ali.length;i++){                     //再對每個li進行遍歷
    				ali[i].className="fuzzy"               //然后給每個li加一個設置字體模糊樣式的class
    			}
    			this.className="amplification"                 //然后給鼠標移入的本身加一個沒有字體模糊效果的class
    		};
    		ali[i].onmouseout=function(){
    			clearTimeout(timer);
    			timer=setTimeout(function(){                   //鼠標移出的時候設置定時200毫秒過后設置每個li的class為空
    				for(i=0;i<ali.length;i++){
    					ali[i].className=''
    				}
    			},200)
    		}
    	}
    }
    

      

  4. 其實用jquery還簡單然后代碼也簡潔一點,只需要幾句就行了,只是代碼看上去裝逼效果不是很好,哈哈哈哈
    $(document).ready(function(){
    	$("li").each(function(){
    		var this_ = $(this);
    		this_.hover(function(){
    			
    			$("li").addClass("fuzzy");
    			$(this).removeClass("fuzzy").addClass("amplification")
    		
    		},function(){
    			$("li").removeClass("fuzzy");
    			$(this).removeClass("amplification")
    		})
    	})
    })
    

      


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM