#javascript #css #element #hyperlink
#javascript #css #элемент #гиперссылка
Вопрос:
По сути, у меня есть эта ссылка, по которой, когда я нажимаю на нее, я хочу, чтобы поверх нее отображалось изображение. Используя javascript, как я могу это сделать?
<a> click me </a>
css:
a.clicked
{
/*what goes here?*/
}
Комментарии:
1. Вы не можете добавить изображение поверх чего-либо с помощью CSS.
2. понял. но как я могу добавить элемент с помощью javascript?
3. О, Хорошо. Да. Вы можете это сделать. Но добавление класса ‘clicked’ к ссылке ничего не даст.
Ответ №1:
Добавить новый элемент изображения довольно просто:
// Append an image with source src to element
function appendImage(element, src, alt) {
// DOM 0 method
var image = new Image();
// DOM 1 - use this or above method
// var image = document.createElement('img');
// Set path and alt properties
image.src = src;
image.alt = a<
// Add it to the DOM
element.appendChild(image);
// If all went well, return false so navigation can
// be cancelled based on function outcome
return false;
}
итак, в элементе A:
<a onclick="appendImage(this, 'foo.jpg', 'Picture of foo');">Add an image</a>
Если A является ссылкой, и вы хотите отменить навигацию, верните все, что возвращает функция. Если функция не возвращает false, ссылка будет пройдена и должна обеспечивать эквивалентную функциональность:
<a href="link_to_picture or useful page" onclick="
return appendImage(this, 'foo.jpg', 'Picture of foo');
">Add an image</a>
Ответ №2:
Вы должны использовать вот так. Есть несколько других хороших методов, это просто для простоты и понимания
<body>
<a onClick='ChangeImage(this);return false'> Click Me <a>
</body>
<script>
function ChangeImage(obj)
{
obj.innerHTML = "<img src='imangename.jpg'>";
}
</script>
Комментарии:
1. как сделать так, чтобы изображение оставалось там после того, как пользователь нажимает на ссылку?
2. изображение останется, но оно будет перезаписано при повторном нажатии.
Ответ №3:
Возможно, вам понадобится javascript-плагин Highslides, смотрите примеры здесь.
Скачать highslides можно здесь.
Ответ №4:
Во-первых, вы, вероятно, захотите присвоить ссылке идентификатор.
<a id="click-me">Click me!</a>
Затем для JavaScript..
document.getElementById('click-me').addEventListener('click', function () {
var image = new Image();
image.src = "your-picture.jpeg/png/whatever";
this.appendChild(image);
});
Комментарии:
1. как сделать так, чтобы изображение оставалось там после того, как пользователь нажимает на ссылку?
2. Оно должно оставаться там, пока они не перезагрузят страницу.