純js實(shí)現(xiàn)背景圖片切換效果代碼
更新時(shí)間:2010年11月14日 22:38:54 作者:
現(xiàn)在純粹用js的人越來越少了,更多的人喜歡jquery,可使我還是喜歡javascript,下面給出一個(gè)用javascript寫的背景切換的小例子,各位大蝦不要罵,只是寫給自己看的,也供js事件的產(chǎn)考依據(jù)。
html代碼
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>背景切換</title>
<link href="css/bgchage.css" type="text/css" rel="Stylesheet" />
</head>
<body>
<div><ul><li></li><li></li><li></li><li></li></ul></div>
<!-- <div>1</div><div>2</div><div>3</div><div>4</div>-->
</body>
<script src="js/bgchage.js" type="text/javascript" ></script>
</html>
因?yàn)閖avascript邏輯順序比較強(qiáng),所以要考慮引用js的位置
css代碼
body {font-size:12px;}
div{ width:950px; height:800px; margin:0 auto; border:solid 1px #d0d0d0;}
li{ list-style-type:none;border:solid 1px #d0d0d0; float:left; margin: 1px; padding:0 5px; height:12px; width:10px;}
/*div{ width:6px; height:14px; margin:1px; padding:0 5px; float:left; border:solid 1px #d0d0d0;}*/
javascript代碼部分:
window.onload=init;
var element= document.getElementsByTagName("li");
function init() //初始化背景色
{
var element= document.getElementsByTagName("li");
for(var i=0; i<4;i++)
{
var k=i+1;
element[i].style.background="url(images/"+k.toString()+".jpg)";
}
}
function addclick()
{
for(var i=0; i<4;i++)
{
var k=i+1;
if(window.attachEvent)
element[i].attachEvent("onclick", new Function("bgchage("+k+");")); //創(chuàng)建事件不能直接.onclick而需要使用.attachEvent("事件",new Function("被調(diào)函數(shù)("+參數(shù)+");"));IE6通過
else
element[i].addEventListener("click", new Function("bgchage("+k+");"),false);
}
}
function bgchage(t) //根據(jù)色塊改變背景色
{
document.getElementsByTagName("body")[0].style.background="url(images/"+t+".jpg)";
}
addclick();
js部分要注意寫事件的兼容,而且其實(shí)jq的思路就是將很多功能寫成插件的形式供自己使用,用javascript寫,可以寫自己的類庫,供反復(fù)使用,也無需承擔(dān)jquery類庫的負(fù)擔(dān)。其實(shí)我也不是說jquery不好,從大的方面來說,jquery的插件大小影響并不大,前端事件看了百度前端交流會(huì)的視頻,發(fā)現(xiàn)人家的類庫也都是js自己寫的,這給了我繼續(xù)學(xué)習(xí)js的動(dòng)力。
復(fù)制代碼 代碼如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>背景切換</title>
<link href="css/bgchage.css" type="text/css" rel="Stylesheet" />
</head>
<body>
<div><ul><li></li><li></li><li></li><li></li></ul></div>
<!-- <div>1</div><div>2</div><div>3</div><div>4</div>-->
</body>
<script src="js/bgchage.js" type="text/javascript" ></script>
</html>
因?yàn)閖avascript邏輯順序比較強(qiáng),所以要考慮引用js的位置
css代碼
復(fù)制代碼 代碼如下:
body {font-size:12px;}
div{ width:950px; height:800px; margin:0 auto; border:solid 1px #d0d0d0;}
li{ list-style-type:none;border:solid 1px #d0d0d0; float:left; margin: 1px; padding:0 5px; height:12px; width:10px;}
/*div{ width:6px; height:14px; margin:1px; padding:0 5px; float:left; border:solid 1px #d0d0d0;}*/
javascript代碼部分:
復(fù)制代碼 代碼如下:
window.onload=init;
var element= document.getElementsByTagName("li");
function init() //初始化背景色
{
var element= document.getElementsByTagName("li");
for(var i=0; i<4;i++)
{
var k=i+1;
element[i].style.background="url(images/"+k.toString()+".jpg)";
}
}
function addclick()
{
for(var i=0; i<4;i++)
{
var k=i+1;
if(window.attachEvent)
element[i].attachEvent("onclick", new Function("bgchage("+k+");")); //創(chuàng)建事件不能直接.onclick而需要使用.attachEvent("事件",new Function("被調(diào)函數(shù)("+參數(shù)+");"));IE6通過
else
element[i].addEventListener("click", new Function("bgchage("+k+");"),false);
}
}
function bgchage(t) //根據(jù)色塊改變背景色
{
document.getElementsByTagName("body")[0].style.background="url(images/"+t+".jpg)";
}
addclick();
js部分要注意寫事件的兼容,而且其實(shí)jq的思路就是將很多功能寫成插件的形式供自己使用,用javascript寫,可以寫自己的類庫,供反復(fù)使用,也無需承擔(dān)jquery類庫的負(fù)擔(dān)。其實(shí)我也不是說jquery不好,從大的方面來說,jquery的插件大小影響并不大,前端事件看了百度前端交流會(huì)的視頻,發(fā)現(xiàn)人家的類庫也都是js自己寫的,這給了我繼續(xù)學(xué)習(xí)js的動(dòng)力。
您可能感興趣的文章:
- 最簡單的js圖片切換效果實(shí)現(xiàn)代碼
- 用html+css+js實(shí)現(xiàn)的一個(gè)簡單的圖片切換特效
- 簡單的實(shí)現(xiàn)點(diǎn)擊箭頭圖片切換的js代碼
- css圖片切換效果代碼[不用js]
- 純js無flash仿搜狐女人頻道FLASH圖片切換效果代碼
- javascript實(shí)現(xiàn)圖片切換的幻燈片效果源代碼
- JS實(shí)現(xiàn)圖片切換效果
- JavaScript實(shí)現(xiàn)圖片切換效果
- js鼠標(biāo)點(diǎn)擊圖片切換效果代碼分享
- javascript實(shí)現(xiàn)點(diǎn)擊圖片切換功能
相關(guān)文章
JavaScript實(shí)現(xiàn)表單驗(yàn)證案例
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)表單驗(yàn)證案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08Js 時(shí)間函數(shù)getYear()的使用問題探討
不推薦使用getYear()這個(gè)函數(shù),因?yàn)樵诨鸷酗@示是不正確的,所以推薦使用getFullYear() 函數(shù),接下來為大家詳細(xì)介紹下getYear函數(shù)在不同瀏覽下的使用問題2013-04-04再談IE中Flash控件的自動(dòng)激活 ObjectWrap
再談IE中Flash控件的自動(dòng)激活 ObjectWrap...2007-03-03echarts實(shí)現(xiàn)詞云自定義形狀的示例代碼
這篇文章主要介紹了echarts實(shí)現(xiàn)詞云自定義形狀的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-02-02在js文件中引入(調(diào)用)另一個(gè)js文件的三種方法
這篇文章主要介紹了在js文件中引入(調(diào)用)另一個(gè)js文件的三種方法,幫助大家更好的理解和學(xué)習(xí)JavaScript,感興趣的朋友可以了解下2020-09-09用JS實(shí)現(xiàn)網(wǎng)頁元素陰影效果的研究總結(jié)
用JS實(shí)現(xiàn)網(wǎng)頁元素陰影效果的研究總結(jié)...2007-08-08js中.sort()函數(shù)的常見用法與高級(jí)操作
JavaScript中的sort函數(shù)可以用來對數(shù)組進(jìn)行排序,默認(rèn)情況下sort函數(shù)將數(shù)組中的元素轉(zhuǎn)換為字符串,并按照Unicode碼點(diǎn)的順序進(jìn)行排序,下面這篇文章主要給大家介紹了關(guān)于js中.sort()函數(shù)的常見用法與高級(jí)操作的相關(guān)資料,需要的朋友可以參考下2023-05-05js 數(shù)組實(shí)現(xiàn)一個(gè)類似ruby的迭代器
今天突然發(fā)現(xiàn)js的數(shù)組處理起來真是麻煩,代碼一些就是一大堆,相比起ruby的迭代器來真是遜色不少。2009-10-10