2010-05-24 1 views
0

Код ниже позволяет пользователю навешивать более одного объекта, и он не только заменяет объект, но также показывает дополнительный объект между кнопками.mouseover, создающий несколько изображений, работает в Firefox, но не i.e

Он отлично работает в Firefox, но не работает в Internet Explorer.

ПОМОЩЬ

Веб-страница: http://www.isp.ucar.edu/

Thx, Terri

if (< document.images) { 

    img1on = new Image(); 
    img1on.src = "images/buttons/button-beachon-on.gif"; 
    img1off = new Image(); 
    img1off.src = "images/buttons/button-beachon.gif"; 

    img2on = new Image(); 
    img2on.src = "images/buttons/button-bgs-on.gif"; 
    img2off = new Image(); 
    img2off.src = "images/buttons/button-bgs.gif"; 

    img3on = new Image(); 
    img3on.src = "images/buttons/button-iam-on.gif"; 
    img3off = new Image(); 
    img3off.src = "images/buttons/button-iam.gif"; 

    img4on = new Image(); 
    img4on.src = "images/buttons/button-nvia-on.gif"; 
    img4off = new Image(); 
    img4off.src = "images/buttons/button-nvia.gif"; 

    img5on = new Image(); 
    img5on.src = "images/buttons/button-utls-on.gif"; 
    img5off = new Image(); 
    img5off.src = "images/buttons/button-utls.gif"; 

    img6on = new Image(); 
    img6on.src = "images/buttons/button-water-on.gif"; 
    img6off = new Image(); 
    img6off.src = "images/buttons/button-water.gif"; 

    img7on = new Image(); 
    img7on.src = "images/buttons/button-exploratory-on.gif"; 
    img7off = new Image(); 
    img7off.src = "images/buttons/button-exploratory.gif"; 


    // second image that does not appear in original button space 
    img1ad = new Image(); 
    img1ad.src = "images/buttons/beachon-overview-sm.gif"; 

    img2ad = new Image(); 
    img2ad.src = "images/buttons/bgs-overview-sm.gif"; 

    img3ad = new Image(); 
    img3ad.src = "images/buttons/iam-overview-sm.gif"; 

    img4ad = new Image(); 
    img4ad.src = "images/buttons/nvia-overview-sm.gif"; 

    img5ad = new Image(); 
    img5ad.src = "images/buttons/utls-overview-sm.gif"; 

    img6ad = new Image(); 
    img6ad.src = "images/buttons/water-overview-sm.gif"; 

    img7ad = new Image(); 
    img7ad.src = "images/buttons/exploratory-overview-sm.gif"; 
} 

function imgOn(imgName) { 
    if (document.images) { 
     document[imgName].src = eval(imgName + "on.src"); 
     document["holder"].src = eval(imgName + "ad.src"); 
    } 
} 

function imgOff(imgName) { 
    if (document.images) { 
     document[imgName].src = eval(imgName + "off.src"); 
     document["holder"].src = "images/buttons/isp-overview-sm.gif"; 
    } 
} 
+0

Был ли отсутствующий «d» в «ocuments.images» преднамеренным? Кроме того, не забудьте прочитать FAQ о том, как отправлять код и т. Д. –

ответ

0

Прежде всего, eval в этих функциях совершенно неуместна

function imgOn(imgName) { 
    if (< document.images) { 
     document[imgName].src = eval(imgName + "on.src"); 
     document["holder"].src = eval(imgName + "ad.src"); 
    } 
} 

function imgOff(imgName) { 
    if (< document.images) { 
     document[imgName].src = eval(imgName + "off.src"); 
     document["holder"].src = "images/buttons/isp-overview-sm.gif"; 
    } 
} 

Они Sh Уальд чтение

function imgOn(imgName) { 
    document.getElementById(imgName).src = window[imgName + "on"].src; 
    document.getElementById("holder").src = window[imgName + "ad"].src; 
} 

function imgOff(imgName) { 
    document.getELementById(imgName).src = window[imgName + "off"].src; 
    document.getElementById("holder").src = "images/buttons/isp-overview-sm.gif"; 
} 

И вместо нескольких img1on = new Image(); с последующими вызовами window[foo] вы должны сделать это

var myImages = {}; 
myImages["img1on" = new Image(); 

Тогда вы можете позже сделать

var foo = myImages[imgName + "on"].src; 

получить src.

+0

К сожалению, приведенное выше дает мне изображение при первой загрузке, но когда он перевернулся, он не может найти изображения «on» и «ad» и после того, как я покинул элемент исходные изображения снова не появляются (что на самом деле было моей проблемой в начале). Любые другие идеи? Спасибо, что посмотрели на это. Terri – tcantrel

+0

Тест: isp.ucar.edu/index3.php – tcantrel

+0

Пробовал небольшой мод: Rollovers работает, но не возвращается к исходным изображениям. Функция imgOn (imgName) { document.getElementById (imgName) .src = eval (imgName + "on.src"); document.getElementById («держатель»). Src = eval (imgName + «ad.src»); } Функция imgOff (imgName) {document.getELementById (imgName) .src = imgName + "off.src"; document.getElementById ("держатель"). Src = "images/buttons/isp-overview-sm.gif"; } isp.ucar.edu/index4.php – tcantrel

Смежные вопросы