Мне нужно изменить src изображения с помощью java-скрипта, и я уверен, что ударил дорожный блок, в html у меня есть 3 элемента li, а в id источник mouseenter img. Я чувствую, что я близок, но до сих пор. До сих пор мой код. Спасибо за любую помощь!Как изменить источник изображения W/JS
Javascript:
var $ = function (id) {
return document.getElementById(id);};
window.onload = function() {
var links = document.getElementsByTagName("li"),
imgElements = document.getElementsByTagName("img"),
imgNode,
i,
URLone,
URLtwo,
link,
image;
for (i = 0; i < imgElements.length; i++) {
imgNode = imgElements[i];
}
imgNode.mouseenter = function() {
var img = this;
URLtwo = img.getAttribute('id');
img.src = URLtwo;
}
imgNode.mouseout = function() {
var img = this;
URLone = img.getAttribute('src');
img.src = URLone;
};
//preload
for (i = 0; i < links.length * 2; i++) {
link = links[i];
image = new Image();
image.src = link.src;
image = new Image();
image.src = link.id;
}};
HTML ::
<body>
<section>
<h1>Ram Tap Combined Test</h1>
<ul id="image_rollovers">
<li><img src="images/h1.jpg" alt="" id="images/h4.jpg"></li>
<li><img src="images/h2.jpg" alt="" id="images/h5.jpg"></li>
<li><img src="images/h3.jpg" alt="" id="images/h6.jpg"></li>
</ul>
</section>
Рабочая JQuery:
$(document).ready(function() {
$("#image_rollovers img").each(function() {
var oldURL = $(this).attr("src"); // gets the src attribute
var newURL = $(this).attr("id"); // gets the id attribute
// preload images
var rolloverImage = new Image();
rolloverImage.src = newURL;
$(this).hover(
function() {
$(this).attr("src", newURL); // sets the src attribute
},
function() {
$(this).attr("src", oldURL); // sets the src attribute
}
); // end hover
}); // end each
}); // end ready
Опишите свой дорожный блок. В чем проблема? – markbernard
Я думаю, что это может быть связано с узлами или логикой, которую я пытаюсь понять и использовать. его новый для меня на этой неделе и после прочтения я до сих пор не понимаю его полностью – IntheMountainair
Вы против использования jQuery? Кроме того, это домашнее задание? Если это так, правила на SO немного отличаются; отметьте его домашним тегом. – levininja