如何从由<object>引用的svg调用父文档中定义的函数元素
How to call functions defined in parent document from an svg referenced by an <object> element?
我曾经在我的网页中嵌入一个svg文件:
<object id="svgmap" width="100%" height="100%" data="<%=path %>/svg/map.svg" type="image/svg+xml" style="">
</object>
,然后我添加了一些图像标签到这个svg文件使用一个外部javascript文件称为"support.js":
var marker = document.createElementNS(xmlns, 'image');
marker.setAttributeNS(null, 'id', "img_0123");
marker.setAttributeNS('http://www.w3.org/1999/xlink', 'href', iconurl);
marker.setAttributeNS(null, 'x', posX);
marker.setAttributeNS(null, 'y', posY);
marker.setAttributeNS(null, 'visibility', 'visible');
marker.setAttribute("onclick", "onsel('0123')");
这个"onsel"函数也是在support.js中定义的,所以当我单击图像时,它会变成另一个图像。现在,当我在浏览器(Opera, Mozilla和Chrome)中查看此页面时,当我点击图像时,它没有切换到另一个图像,并且在开发人员工具的控制台上,它说"referenceerror: onsel is not defined svgmap:1"。
这是否意味着svg文件不能使用其他javascript文件中定义的函数?怎么做呢?
我将您的问题解释为"如何从
下面是一个如何从svg内部调用父元素的示例。父元素中的函数输出被点击的元素以及它是从哪个元素引用的。从svg到父文档:
window.parent.yourFunctionInParentDocument();
相关文章:
- BrowserId登录请求在文档加载时被调用
- 当在文档中拖动mouseup/mouseleve时,我想调用我的Ajax请求
- 使用window[variablename]()调用函数;在文档中.准备
- AJAX调用中的强制文档.write
- 多个“;脚本调用"在SINGLE”内$(文档).ready()”;
- 如何从 html 文档中调用 yahoo weather api javascript 函数
- 在 $( 文档 ).ready 函数中使用字符串名称调用 javascript 函数
- 如何在文档准备函数中调用变量的click函数
- window.opener调用函数给了我一个文档.getElementById(..)为null
- JavaScript:从子html文档调用函数
- 为什么当文档加载 jQuery 时我不能直接调用函数
- 如何从 HTML 文档中的外部 JS 调用/启动此函数
- Javascript函数应该在jQuery文档内部编写和调用,还是在外部
- 检查脚本被调用的位置/哪一行或文档
- jQuery 文档就绪 - 函数调用:顺序或异步
- 流星 JS - 按 ID 调用集合中的单个文档
- 带有<对象>的jQuery对话框无法从对象文档中调用对话框('close')
- 在 html 文档中调用 PHP 函数 nl2br
- 如何对从CouchDB检索到的文档调用函数
- 从CouchDB设计文档调用API