使用iframe/object/embed引入svg 使用getSVGDocument()为null(可能是两个问题)

一.同源策略问题(本地调试解决方案)

  • firefox浏览器

    • 地址栏输入:about:config

      创新互联公司是一家专注于成都做网站、网站制作与策划设计,甘德网站建设哪家好?创新互联公司做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:甘德等地区。甘德做网站价格咨询:18982081108

    • 搜索security.fileuri.strict_origin_policy(这个是安全文件同源策略限制),设置为false

    • 重启浏览器

  • chome浏览器

    • C盘下创建一个文件夹,名称随意(chromedata)

    • 找到chome快捷方式(复制一个,)

    • 复制的快捷方式打开属性 ->目标 ,后面加上"--allow-file-access-from-files --user-data-dir="C:\chromedata" --disable-web-security"

      • --disable-web-security 就是关闭同源策略
    • 或者按这个格式:原路径+ 空格 + --disable-web-security --user-data-dir=C:\chromedata

  • edge同理(chome内核)

  • mac

    • 命令行执行open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/chongshen/MyChromeDevUserData/

    • –user-data-dir后面的路径(按你自己的安装路径来)

二.iframe未加载完成

  • 让他加载完就ok(写在onload中,或者写个监听器,让它加载完成再触发就ok)

三.建议使用panzoom.js

  • 这里提供两个地址

    • npm
      • https://www.npmjs.com/package/panzoom
    • github
      • https://github.com/anvaka/panzoom#readme

文章标题:使用iframe/object/embed引入svg 使用getSVGDocument()为null(可能是两个问题)
网页路径:http://myzitong.com/article/dsojppc.html