使用 Ctrl+单击JS地图进行选择
Select with Ctrl+Click on JS Map
我正在根据点击地图来选择一组邮寄地址。我找到了一个现成的解决方案。这是俄罗斯地图,所有区域都已标记。这些区域在MouseOver
事件上改变颜色,这很好。现在我需要通过 Ctrl+单击保持选中状态,但我似乎无法弄清楚这一点。这是 http://jsfiddle.net/LxtMY/8/
我试图将MouseOver
和MouseOut
事件更改为脚本最底部的event.CtrlKey
:
F(Q).trigger("alwaysOn.maphilight").find("area[coords]").bind("mouseover.maphilight",X).bind("mouseout.maphilight",function(Z){L(T)});
U.before(T);
U.addClass("maphilighted")
但这没有产生任何结果。也许我编辑的东西是错误的。
每个area
标签必须有一个唯一的 id:
<area id="murmansk" ... />
然后添加以下 JavaScript 代码:
$('area').click(function(e) {
e.preventDefault();
var id = e.currentTarget.id;
var data = $('#' + id).mouseout().data('maphilight') || {};
data.alwaysOn = !data.alwaysOn;
$('#' + id).data('maphilight', data).trigger('alwaysOn.maphilight');
});
如果您的网页上有多个地图,则可以使用样式类而不是area
作为选择器。
在此处查找另一个示例:
- http://davidlynch.org/projects/maphilight/docs/demo_features.html
如果你需要评估选定的省份/国家,那么你可以使用jQuery maphilight(如果他们为你提供了这样的方法)或在你的JavaScript代码中添加/删除选定的区域到数组中。
相关文章:
- 禁用/启用基于单选/选择选项所选Javascript的文本框
- ui.grid 行无法选择行
- 根据换行符选择文本
- 基于单选/选择选项重定向
- 单击提交时存储输入单选选择
- 如何使用regex在多行中选择包含任意字符的值
- 如何在多选选择框后调用javascript方法
- 在文档加载和函数调用时,行的选择方式不同
- jQuery Mobile:单选选择菜单值干扰多选菜单的处理程序
- 多个文本字段,根据单选选择显示/隐藏(Html,JS)
- HTML 行表选择
- 在单选选择中更改前缀货币符号
- 单击单选选择时动态显示 DIV
- 检查是否进行了单选选择
- 基于下拉选择的单选选择/取消选择
- 防止单选选择与时间选择重叠
- 所选选择框中更新选项的性能
- 使jqGrid多选选择在分页、工具栏搜索或筛选后保持不变
- 如何触发对复选框的更改或单击行以选择表行
- 在表格行中选择单选按钮时,行的颜色应该更改