【发布时间】:2015-10-23 23:50:29
【问题描述】:
我在 Rails 中使用 HTML、CSS、JavaScript。 我的图像存储在我的 app/assets/images 文件夹中。 我的音频(用于 onClick 事件监听器)存储在我的 public/audios 文件夹中。
我希望将图像叠加在一起,这样我就可以针对每个单独的图像设置不同的 JavaScript onClick 事件侦听器,但是这些图像是用不可见的背景呈现的吗?这会干扰点击它所在的图像。
独立,我的图标 (gif) 没有背景。 无背景图标示例供参考:http://findicons.com/search/gif
为了突出显示图像有一个不可见的背景,
我使用 rails 命令在我的页面上呈现图像。
<div id="id3">
<%= image_tag "gif_file.png" %>
</div>
我的 css 以 div 为目标
#id3 {
position:absolute;
}
为了减少文本数量和混乱,我省略了显示分层图标的代码。
我的 .js 文件
var soundright = '<audio autoplay="autoplay" src="/audios/hello.wav"></audio>'
var sound = document.getElementById('sound');
var icon = document.getElementById('id3');
$(icon).click(function(){
$(sound).html(soundright);
});
请告知我如何单击每个可见分层的渲染图像(JavaScript onClick 事件侦听器添加到每个单独的图像),而不会碰到分层图像的不可见背景。
消除不可见的背景是我一直无法找到的解决方案。
我正在尝试通过将图像相互叠加来制作飞镖靶,并使飞镖靶的每个部分都可点击(onClick 事件侦听器)。
编辑:刚刚编辑了我的最后 3 段以使其更易于理解
【问题讨论】:
-
谢谢你们!您的回答使我下载了 Adobe Fireworks 以使用其图像映射功能快速制作我可以分配 JS onClick 函数的图像映射!我研究了画布解决方案,但我认为这将花费我更多的时间来学习!我知道我会在某个时候进入那个......如果你有任何特别有用的指南,请告诉我!谢谢!
标签: javascript css ruby-on-rails-4