javascript - onmouseover javascript 照片库

标签 javascript html web image-gallery

我正在尝试制作一个照片库,其中 div 元素的背景图像会更改为您将鼠标悬停在其缩略图上的图像(不能使用 jQuery 来实现此目的)。

这是我的 HTML 和 JS 代码:

function displayImage(event) {
  event = event || window.event;
  var targetElement = event.target || event.srcElement;

  if (targetElement.tagName == "IMG") {
    document.getElementById("viewer").style.backgroundImage = targetElement.getAttribute("src");
  }
}
<div id="viewer">
  <p>Hover over the image to display larger</p>
</div>

<div class="thumbnails" onmouseover="displayImage(event)">
  <div class="thumb-container">
    <img src="img/267400-R1-E003.jpg" />
  </div>
</div>

其中 viewer id 是我希望显示照片的 div 元素的 ID,并且 onmouseover=displayImage 在我的图像标签的 div 容器标签中调用.

最佳答案

您必须将图像 src 包装到 url() 中,因为这就是 CSS background-image 的方式。作品:

function displayImage(event) {
    event = event || window.event;
    var targetElement = event.target || event.srcElement;

    if (targetElement.tagName == "IMG") {
        document.getElementById("viewer").style.backgroundImage = 'url(' + targetElement.getAttribute("src") + ')';
    }
}
#viewer {
    height: 200px;
    width: 800px;
}
<div id="viewer">
    <p></p>
</div>

<div class="thumbnails" onmouseover="displayImage(event)">
    <div class="thumb-container">
        <img src="http://media.caranddriver.com/images/media/51/dissected-lotus-based-infiniti-emerg-e-sports-car-concept-top-image-photo-451994-s-original.jpg">
    </div>
</div>

关于javascript - onmouseover javascript 照片库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33600015/

相关文章:

javascript - 如何使用 jquery 加载和验证表单?

JavaScript onClick 添加类

javascript - 尝试让coffescript正确编译为 Node 服务器的javascript

javascript - 如何制作带有刻度标记 html5 的 "playback" slider ?

html - 将元素放置在滚动 div 中的固定位置

html - 如何在正文内容的左侧制作 float 图像?

html - 同时拥有移动站点和常规站点的架构?

web - 阻止所有 tumblr 的主机文件

javascript - jQuery size() 并查找是否应用了类

javascript - 模拟点击文档 ReactJS/JSDom