Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript

WBOY
Lepaskan: 2016-05-16 16:26:35
asal
2440 orang telah melayarinya

Musim sejuk sudah tiba, dan banyak ruang blog telah menambah kesan kepingan salji, jadi saya pergi untuk melihat cara mereka melaksanakan kesannya. Terdapat beberapa kod kesan, jadi saya membawanya Rakan yang memerlukan boleh mengambil alih dan mencubanya.

Gambar besar kepingan salji:

Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript

Kod kesan satu

<script type="text/javascript" language="javascript">
(function() {
function k(a, b, c) {
if (a.addEventListener) a.addEventListener(b, c, false);
else a.attachEvent && a.attachEvent("on" + b, c)
}
function g(a) {
if (typeof window.onload != "function") window.onload = a;
else {
var b = window.onload;
window.onload = function() {
b();
a()
}
}
}
function h() {
var a = {};
for (type in {
Top: "",
Left: ""
}) {
var b = type == "Top" &#63; "Y": "X";
if (typeof window["page" + b + "Offset"] != "undefined")
a[type.toLowerCase()] = window["page" + b + "Offset"];
else {
b = document.documentElement.clientHeight &#63; document.documentElement: document.body;
a[type.toLowerCase()] = b["scroll" + type]
}
}
return a
}
function l() {
var a = document.body,
b;
if (window.innerHeight) b = window.innerHeight;
else if (a.parentElement.clientHeight) b = a.parentElement.clientHeight;
else if (a && a.clientHeight) b = a.clientHeight;
return b
}
function i(a) {
this.parent = document.body;
this.createEl(this.parent, a);
this.size = Math.random() * 5 + 5;
this.el.style.width = Math.round(this.size) + "px";
this.el.style.height = Math.round(this.size) + "px";
this.maxLeft = document.body.offsetWidth - this.size;
this.maxTop = document.body.offsetHeight - this.size;
this.left = Math.random() * this.maxLeft;
this.top = h().top + 1;
this.angle = 1.4 + 0.2 * Math.random();
this.minAngle = 1.4;
this.maxAngle = 1.6;
this.angleDelta = 0.01 * Math.random();
this.speed = 2 + Math.random()
}
var j = false;
g(function() {
j = true
});
var f = true;
window.createSnow = function(a, b) {
if (j) {
var c = [],
m = setInterval(function() {
f && b > c.length && Math.random()
< b * 0.0025 && c.push(new i(a)); ! f && !c.length && clearInterval(m);
for (var e = h().top, n = l(), d = c.length - 1; d >= 0; d--)
if (c[d]) if (c[d].top < e || c[d].top + c[d].size + 1 > e + n) {
c[d].remove();
c[d] = null;
c.splice(d, 1)
} else {
c[d].move();
c[d].draw()
}
},
40);
k(window, "scroll",
function() {
for (var e = c.length - 1; e >= 0; e--) c[e].draw()
})
} else g(function() {
createSnow(a, b)
})
};
window.removeSnow = function() {
f = false
};
i.prototype = {
createEl: function(a, b) {
this.el = document.createElement("img");
this.el.setAttribute
("src", b + "雪花图片的绝对链接地址");
this.el.style.position = "absolute";
this.el.style.display = "block";
this.el.style.zIndex = "99999";
this.parent.appendChild(this.el)
},
move: function() {
if (this.angle < this.minAngle || this.angle > this.maxAngle)
this.angleDelta = -this.angleDelta;
this.angle += this.angleDelta;
this.left += this.speed * Math.cos(this.angle * Math.PI);
this.top -= this.speed * Math.sin(this.angle * Math.PI);
if (this.left < 0) this.left = this.maxLeft;
else if (this.left > this.maxLeft) this.left = 0
},
draw: function() {
this.el.style.top = Math.round(this.top) + "px";
this.el.style.left = Math.round(this.left) + "px"
},
remove: function() {
this.parent.removeChild(this.el);
this.parent = this.el = null
}
}
})();
createSnow("", 40);
</script>
Salin selepas log masuk

Salin dan tampal kod di atas terus ke dalam fail Header atau Footer dalam tema Jika anda hanya mahu halaman artikel dipaparkan, tambahkan terus ke single. Di bawah, kami menyediakan gambar kepingan salji (bahan yang diperlukan) kepada semua orang, Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript gambar kecil: Anda perlu memuat naiknya ke tema semasa blog anda, dan kemudian menukar pautan dalam kod ke lokasi gambar. Kesannya adalah seperti yang ditunjukkan pada halaman ini.

Kod kesan dua:

 <html>
<head>
<script>
function start(){
var array=new Array();
var canvas=document.getElementById("mycanvas");
var context=canvas.getContext("2d");
for(var i=0;i<50;i++){
var ShowEmpat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript=new showEmpat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript();
array.push(ShowEmpat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript);
}
time=setInterval(function (){
context.clearRect(0,0,canvas.width,canvas.height);
for(var i=0;i<array.length;i++){
array[i].move();
array[i].draw(context);
}
},500);
}
function showEmpat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript(){
var y=parseInt(Math.random()*50)*10;
var x=parseInt(Math.random()*80)*10;
this.draw=function(context){
context.font="50px Calibri";
context.fillText("*",x,y);
}
this.move=function(){
y+=20;
if(y>600){
y=0;
}
}
}
</script>
</head>
<body>
<input type="button" value="start" onclick="start()" />
<br/>
<canvas id="mycanvas" height="600px" width="600px" style="border: 3px solid blue"></canvas>
</body>
</html>
Salin selepas log masuk

Kesan ini ditunjukkan seperti berikut (rasanya hodoh, tidak disyorkan):

Kod kesan tiga

Malah, anda juga boleh menggunakan pemalam let it Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript untuk melaksanakan kepingan salji yang jatuh pada blog WordPress anda.

Saya tidak akan menerangkan secara terperinci tentang cara menggunakan pemalam let it Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript di sini. Ia tidak berbeza dengan pemasangan pemalam lain Anda boleh memuat turun dan memuat naik fail secara langsung dalam folder let it Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript /wp-content/plugins/ direktori, dan kemudian Untuk mengaktifkan pemalam ini, hanya tetapkan pemalam dalam menu panel pentadbir WordPress. Atau anda boleh mencarinya dengan mencari terus di perpustakaan pemalam belakang.

tapak web rasmi biarkan salji: Klik untuk melawat

Kod kesan empat

Saya melihat pemalam SnowStorm yang sangat berkuasa di Internet. Ia hebat. Nampaknya carian biarkan salji di Google akan menghasilkan kod untuk kesan salji dan fros Ia sangat kreatif. Jika anda rasa kasut kanak-kanak itu bagus, anda boleh pergi ke laman web rasmi untuk menyemaknya.

Saya menemui kod kesan jatuh kepingan salji rawak mudah di Internet untuk dikongsi dengan anda (kesan ini ditulis dalam kod tulen. Kepingan salji ialah *.):

Mari terangkan secara ringkas beberapa fungsi di dalam:

1. letItSnow()

Salji turun (ayat ini masih tidak berguna). Kemudian panggil createSnow untuk menjana kepingan salji.

2. createSnow()

Jana kepingan salji adalah teg untuk mensimulasikan kepingan salji (salinan Google tidak boleh dimuat turun, ia sebenarnya dipaparkan sebagai ruang, saya sangat terkejut... ), dan kemudian masukkannya ke dalam bekas yang besar dipanggil Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox, dan individu yang dihasilkan ditolak ke dalam iArray dan dikumpulkan. Kepingan salji menggunakan kaedah kedudukan mutlak berdasarkan Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox Bahagian atas ialah 0px, dan sebelah kiri menggunakan Math.random()*window.screen.width, supaya kepingan salji dijana secara rawak dalam lebar skrin.

Gunakan warna untuk mengawal kedalaman warna kepingan salji untuk mencipta kedalaman medan, antara 0 hingga 200
Gunakan fontSize untuk mengawal saiz kepingan salji, antara 10px hingga 15px
Gunakan masa untuk mengawal selang panggilan Snowflake Falling, antara 40ms hingga 50ms
Gunakan Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptInterval untuk mengawal selang antara kepingan salji, antara 500ms hingga 1000ms

Kemudian ia memanggil dirinya secara rekursif, secara berterusan menghasilkan kepingan salji.

3. fallDown()

Seperti namanya, ia adalah untuk membuat kepingan salji jatuh Kelajuan jatuh ialah 2px, iaitu, setiap kali ia jatuh menegak 2px. Buat ujian pada masa ini Jika kepingan salji jatuh ke ketinggian tetap, iaitu lebih tinggi daripada bekas induk, kemudian keluarkannya Ini boleh mengurangkan tekanan pada penyemak imbas dan lebih perlahan, Ia telah dialih keluar daripada pandangan oleh overflow:hidden. Kemudian panggil fungsi windBlow sambil menurun secara menegak untuk membuat kepingan salji jatuh dengan lebih artistik.

4. tiupan angin()

Namanya nampak macam tiupan angin, tapi sebenarnya kesan tiupan angin (ini lagi tak guna. Haha.), menggunakan Math.sin() untuk menghasilkan kesan kepingan salji terapung di udara, supaya kepingan salji tidak menjadi garis lurus yang membosankan Daripada jatuh, ia jatuh dalam bentuk serpentin.

function letItSnow(){
	var Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox=document.getElementById("Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox");
	var iArray=new Array();
	createSnow(Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox,iArray);

}
function fallDown(temObj,iArray){
	var speed=2;
	var top=parseInt(temObj.style.top);
	if(top>510){//当到超过高度时候就删了它,减轻浏览器压力
		for(var i=0;i<iArray.length;i++){
			if(temObj==iArray[i]){
				iArray.splice(i,1);
				var Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox=document.getElementById("Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox");
				Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox.removeChild(temObj);
				return false;
			}
		}
	}
	temObj.style.top=top+speed+"px";
	var wind=windBlow(temObj,top);
	temObj.style.left=parseInt(temObj.style.left)+wind*2+"px";
}
function windBlow(temObj,top){
	if(parseInt(Math.random())%2==1)
	return Math.sin(top/16);
	else return Math.cos(top/16);
}
function createSnow(Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox,iArray){
	var temObj=document.createElement("i");
	var temText=document.createTextNode("*");
	temObj.appendChild(temText);
	temObj.style.left=parseInt(Math.random()*window.screen.width)+"px";
	temObj.style.top="0px";
	var temNum=parseInt(Math.random()*200);
	temObj.style.color="#"+temNum.toString(16)+temNum.toString(16)+temNum.toString(16);
	iArray.push(temObj);
	Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox.appendChild(temObj);
	var temNum=0;
	while(temNum<10){
		temNum=parseInt(Math.random()*15);
	}
	temObj.style.fontSize=temNum+"px";

	var time=0;
	while(time<40){
		time=parseInt(Math.random()*50);
	}
	temObj.timer=setInterval(function(){
		fallDown(temObj,iArray);								
	},time);
	var Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptInterval=0;
	while(Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptInterval<500){
		Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptInterval=parseInt(Math.random()*1000);
	}
	var createTimer=setTimeout(function(){
		createSnow(Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptBox,iArray);	
		clearTimeout(createTimer);
	},Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascriptInterval);
}
Salin selepas log masuk

Alamat demo: http://demo.jb51.net/js/2014/Empat cara untuk menggunakan kod js dan pemalam untuk mencapai kesan jatuh kepingan salji dalam kemahiran wordpress_javascript/

Baiklah, ini menamatkan empat kod kesan. Semoga dapat membantu rakan-rakan yang memerlukan. Jika anda mempunyai sebarang pertanyaan, anda boleh tinggalkan mesej di bawah.

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!