0

我已经在 Firefox 22、Opera 12.12、Chrome 28.0.1500.95 m 和 IE 8.0.6001.18702 中测试了这段代码。全部在 Windows XP 32 位。我只是想知道我的代码是否存在跨浏览器或跨操作系统问题。我不确定如何在不降级的情况下测试旧版本的浏览器,而且我无法测试移动浏览器和更新的浏览器。

这是下面的代码。单击小图像使它们变大,单击大图像使它们变小。

http://jsfiddle.net/UQgWb/

function bigSmall(input){
    var blnMakeBig=false;
    if(input.name=="s"){
        blnMakeBig=true;
    }
    var bigImages=document.getElementsByTagName("img");
    for(var i=0;i<bigImages.length;i++){
        if(bigImages[i].getAttribute("name")=="b"){
            bigImages[i].src=bigImages[i].src.substr(0,bigImages[i].src.length-bigImages[i].src.length)+"http://static.ddmcdn.com/gif/top-5-cat-allergy-symptoms-2.jpg";
            bigImages[i].className="s";
            bigImages[i].name="s";
        }
    }
    if(blnMakeBig){
        input.src=input.src.substr(0,input.src.length-input.src.length)+"http://fc07.deviantart.net/fs70/f/2013/071/7/2/grumpy_cat_trikky_by_reverendbonobo-d5xs0z6.jpg";
        input.name="b";
        input.className="b";
    }
}

我把它打结input.src.length-input.src.length是不必要的,但最终它会是input.src.length-5这样,所以我把它留在那里以保持完整性。

我想基本问题是:

.className, .name, .src, .substr(), .getAttribute("name"), 和是否.getElementsByTagName("img")兼容所有浏览器、桌面和移动设备?

我查看了http://caniuse.com,但在那里运气不佳。

4

0 回答 0