我有一个切换按钮图像,它使用一对 SVG 图像,当单击图像时它们会交换。它在任何地方都很好用,除了在 Chrome 和 Safari 等 webkit 浏览器中。
我创建了一个显示问题的小提琴。首次加载时,已关闭的文件夹图标正确显示。如果单击它,它会换出一个“打开的文件夹”svg。当您再次单击以将其关闭时,您将再次获得第一个 SVG,但现在它放大得太大了。这在 IE 和 Firefox 中可以正常工作。
有什么想法有什么问题吗?
这是演示:http: //jsfiddle.net/billdwhite/6gVPr/4/
这是代码:
var folderOpened = false;
var imageHolder = domConstruct.create("div",{
"class": "svgImageHolder"
}, win.body());
var svgImage = domConstruct.create("img", {
"class":"svgImage",
"src": "http://www.billdwhite.com/wordpress/wp-content/images/folder_closed.svg"
},
imageHolder);
on(svgImage, "click", function() {
if (folderOpened) {
folderOpened = false;
svgImage.src = "http://www.billdwhite.com/wordpress/wp-content/images/folder_closed.svg";
} else {
folderOpened= true;
svgImage.src = "http://www.billdwhite.com/wordpress/wp-content/images/folder_opened.svg"
}
});