求助这段JS代码怎么简化,实现鼠标经过图片时透明度为1,离开时透明度为0.5

JavaScript021

求助这段JS代码怎么简化,实现鼠标经过图片时透明度为1,离开时透明度为0.5,第1张

楼上那个也可以。

下面说的是纯JS 如果你图片很多会比上面的方便

1将图片所用变量 弄成一个数组,

var yiguitu1

var myarry=[]

for(var i=0i<ni++){

    var j=yiguitu1+i

    myarry.push(j)

}

2.将你需要的事件做成for循环

foreach(m in myarry){

    m.onmouseover=function(m){

        m.style.opacity=1

    }

    m.onmouseout=function(m){

        m.style.opacity=0.5

    }

}

var index = 0

function a(){

index %= 4

document.getElementById('qq').src = index + 1+".jpg"

index++

setTimeout(a,1500)

}

setTimeout(a,1500)

你这个代码,不仅写的很累赘,而且性能还很差,优化你这个代码有很多总,

1、对于会使用多次的jquery对象用一个变量存起来,比如你的$('button')使用了很多次,你可以定义一个变量var button = $('button')这样后面的代码都使用button

2、对于选择器最优的肯定还是通过ID去选择,所以你要使用的元素劲量去写一个ID或Class只能的,比如你的$('div').eq(1)你要使用某一个,就直接给这个div将id或class,$('#my_div'),就不需要用索引

3、对于你写的jquery选择器,会去搜索整个文档,比如你的$('div')会把整个文档的div都包含进来,其实有时我们只需要某一区域的html,所以我们可以给某个区域的符级加加一个id或其它的表示,然后去查找里面要用的控件,比如$('#my_div').find('div')