2012-03-16 4 views
5

новый iPad! Не хотите использовать jQuery, потому что это единственная функция, необходимая на странице.JavaScript change img src атрибут без jQuery

Нужна помощь в преобразовании вложенной функции .attr.

Спасибо!

window.onresize = window.onload = function() { 
    if (window.innerWidth > 1536) { 
     var logo = document.getElementById('rm'); 
     logo.attr('src','img/rm2.png'); 
    } 
}; 

ответ

17

Вы имеете в виду, что хотите использовать чистый javascript?

Это следует сделать это:

var logo = document.getElementById('rm'); 
logo.src = "img/rm2.png"; 

Так что ваша функция должна выглядеть следующим образом:

window.onresize = window.onload = function() { 
    if (window.innerWidth > 1536) { 
     var logo = document.getElementById('rm'); 
     logo.src = "img/rm2.png"; 
    } 
}; 

Примечание: Вы можете также использовать element.setAttribute. НО см этот пост больше:
When to use setAttribute vs .attribute= in JavaScript?

+4

dang it, избили меня на 8 секунд :) – dbrin

+0

Хорошо, это просто здорово. – Aaron

+0

:) Да, на вопросы JS/JQuery действительно слишком много людей, борющихся за [стрельбу ответа.] (Http://meta.stackexchange.com/questions/9731/fastest-gun-in-the-west-problem) – gideon

0

Я думаю, что это просто logo.src = "img/rm2.png".

0
var logo = document.getElementById('rm'); 
logo.setAttribute('src', 'img/rm2.png'); 
1

попробовать это ... надеюсь, что это работает

window.onresize = window.onload = function() { 
    if (window.innerWidth > 1536) { 
     var logo = document.getElementById('rm'); 
     logo.setAttribute('src','img/rm2.png'); 
    } 
}; 
0

Так как вы говорите, что вы хотите сделать это в разных местах программы, я хотел бы создать такую ​​функцию:

function ChangeImage(image_id,path) 
{ 
    document.images[image_id].src = path 
} 
0

Итак, если вы хотите проверить, имеет ли размер изменения, а затем изменяет код проверки ниже.

window.onresize = window.onload = function() { 
    if (window.innerWidth < 768) { 

     var logo = document.getElementById('changeLeft'); 
     logo.src = "MobileImage.png"; 

    }else{ 

var logo = document.getElementById('changeLeft'); 
     logo.src = "DesktopImage.png"; 

    } 
}; 

Настройте window.innerWidth, чтобы определить точки разрыва. Надеюсь, что помогает.