gpt4 book ai didi

javascript - 映射图片onClick事件加maphilight hover

转载 作者:行者123 更新时间:2023-11-30 17:41:57 31 4
gpt4 key购买 nike

enter image description here

上面是一个包含 4 个映射区域的示例图像。
这是我正在尝试做的事情:
如果鼠标悬停在任何映射区域上,只有该区域应该改变颜色
如果在任何映射区域上单击鼠标,一个全新的图像应该替换图像 1

到目前为止我尝试了什么:

点击 mapped_region 时改变图像

 <img alt="main menu" class="map" id="myimage" src="image_1.png" border="0" usemap="#map1" />
<map name="map1" id="map1">
<area id="button1" alt="map1 button1" coords="4,49,148,138" shape="rect" onclick="document.getElementById('myimage').src='image_2.png'" />
</map>

在鼠标悬停时突出显示 mapped_region

    <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="http://davidlynch.org/js/maphilight/jquery.maphilight.min.js"></script>
<script type="text/javascript">
$(function() {
$('.map').maphilight();
});
</script>

maphighlight 和 map_click_event 分别工作正常。但是当我同时启用它们时,只有 maphilight 有效。当 maphilight 处于事件状态时,如何为映射图像启用 onclick 事件?

编辑:图片和问题更清晰

最佳答案

您将不得不使用 Jquery 来实现此目的。以下站点为初学者提供了很好的教程: codeacademy

这可能有助于您掌握 jquery 的概念。复制粘贴运行。它很粗糙,您将不得不进行一些更改,但这正是您上面所要求的方式。

    <!DOCTYPE html>
<html>
<head>

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

<script>
$(document).ready(function () {

$('.area').mouseenter(function () {
$(this).addClass("change");
});

$('.area').mouseleave(function () {
$(this).removeClass("change");
});


$('#a1').click(function () {
$('.map').addClass("img_add");
$('.map div').hide();
});
$('#a2').click(function () {
$('.map').addClass("img_add");
$('.map div').hide();
});
$('#a3').click(function () {
$('.map').addClass("img_add");
$('.map div').hide();
});
$('#a4').click(function () {
$('.map').addClass("img_add");
$('.map div').hide();
});
</script>

<style>
.map {
height:40px;
width:220px;
}
.area {
height:30px;
width:50px;
background-color: yellow;
float: left;
margin: 2px;
}
.change {
background-color: red;
}
.img_add {
background-image:url('some_image.ext');
background-repeat: no-repeat;
background-position: center;
}
</style>

</head>

<body>

<div class="map">
<div class="area" id="a1"></div>
<div class="area" id="a2"></div>
<div class="area" id="a3"></div>
<div class="area" id="a4"></div>
</div>

</body>
</html>

输出看起来像this .

附言:要显示有效图像,请为 .img_add 提供样式中的有效链接(将“some_image.ext”替换为正确的图像链接)

关于javascript - 映射图片onClick事件加maphilight hover,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20901828/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com