我已经创建了一个 Raphael 文档,并且正在存储这样的位置:
var R = Raphael("paper", 600, 500);
var attr = {
fill: "#fff",
stroke: "#fff",
"stroke-width": 1,
"stroke-linejoin": "round"
};
-- 从分配给object
'ausData' 的 db 中获取坐标并创建一个object
'aus' --
$.each(ausData,function(i,obj) {
attr.fill = myData[i].color;
aus[i] = R.path(obj).attr(attr);
aus[i].id = myData[i].id;
mapIdObj[stateData[i].id] = R.getById(stateData[i].id);//aus[i].id;
});
所以路径对象存储在对象mapIdObj中
然后我试图通过单击链接来更改路径对象。在 .success 中,jQuery.post.success
我遍历所有元素,并将锚标记附加到页面,然后jQuery.post.complete
尝试绑定单击:
$('#superHappyDiv').append('<a id="button'+st.id+'" class="superButton" name="button'+st.id+'" ref="'+st.id+'" class="" href="javascript:;" title="" target="">x</a>');
$('.superButton').live('click onmousedown',function() {
if (window.console) console.log($(this).attr('ref'));
var thisPath = mapIdObj[$(this).attr('ref')];
thisPath.animate({ 'transform': 's2', opacity: .9 }, 300, "<>");
});
其他答案指出这是有效的,它确实有效,但至少在 IE 7 和 8 中没有!
有没有更有效的方法可以让这个工作,或者在 IE 中工作?!
干杯,博