美国地图插件,具有状态数据/悬停功能的新按钮
U.S. Map plugin, new buttons with the state data / hover ability
我正在使用jQuery美国地图插件。
在这里找到。https://github.com/NewSignature/us-map/
我正在尝试添加10个额外的按钮,这些按钮也将与状态数据相关。例如,默认情况下,您可以覆盖某个状态,并且存在HOVER COLOR。我试图在为其创建附加按钮的新状态中保持这种效果。
例如,下面的new按钮。
$("#star_btn1").click(function() {
$('#ca').toggle();
该插件具有已定义和可自定义的悬停样式
'stateHoverStyles': {
fill: '#ffc600',
},
和:
_defaultMouseOverAction: function(stateData) {
// hover effect
this.bringShapeToFront(stateData.shape);
this.paper.safari();
// ... for the state
var attrs = {};
if(this.options.stateSpecificHoverStyles[stateData.name]) {
$.extend(attrs, this.options.stateHoverStyles, this.options.stateSpecificHoverStyles[stateData.name]);
} else {
attrs = this.options.stateHoverStyles;
}
stateData.shape.animate(attrs, this.options.stateHoverAnimation);
有什么想法可以把它和我的新按钮结合起来吗
您可以让按钮的事件处理程序触发映射插件的事件。
HTML:
<button type="button" class="stateBtn" data-name="CA">California</button>
<button type="button" class="stateBtn" data-name="MN">Minnesota</button>
<br />
<br />
<div id="map" style="width: 550px; height: 350px;"></div>
<div id="clicked-state"></div>
地图的原始JavaScript:
$('#map').usmap({
click: function (event, data) {
$('#clicked-state')
.text('You clicked: ' + data.name)
.parent().effect('highlight', {
color: '#C7F464'
}, 2000);
}
});
按钮的附加JavaScript:
$('.stateBtn').on('click mouseout mouseover', function(e) {
var name = $(this).attr('data-name');
$('#map').usmap('trigger', name, e.type, e);
});
注意如何在不需要添加任何额外JavaScript代码的情况下添加额外的状态按钮。
jsfiddle上的演示
美国地图插件文档
相关文章:
- 美国地图插件,具有状态数据/悬停功能的新按钮
- 当我单击添加新按钮(WORDPRESS,PHP)时,我需要在表格中隐藏
- 将新按钮应用于游戏
- 用于导出Excel的.Net MVC 4.5 JqGrid按钮功能不起作用.什么'我的代码错了
- JQuery Mobile追加新按钮的行为未达到预期
- 多按钮功能
- 如何将JsBarcode放入javascript按钮功能中
- jQuery 单击事件在追加新按钮时未触发
- 选项卡按钮功能
- j查询禁用按钮功能在第二次点击
- 交通信号灯点击按钮功能
- 按钮功能,如果按钮被按下 10 秒钟
- 更新引导拆分按钮文本并使用下拉按钮功能
- 动态更改点击事件上的按钮功能
- DC.js 图表重绘与点击事件的新组功能
- 阻止安卓后退按钮功能
- Extjs 4.1.1 在日期选择器中添加了新按钮,但其处理程序不起作用
- 如何使用 CKEditor 将新按钮添加到组中
- 使用提交按钮功能调试javascript中的问题
- 更改变量并创建新按钮的按钮