Javascript HTML中的名称空间是什么?
这很简单,我试图理解HTML中的名称空间 使用这两个命令的区别是什么。为什么要在Javascript HTML中的名称空间是什么?,javascript,html,Javascript,Html,这很简单,我试图理解HTML中的名称空间 使用这两个命令的区别是什么。为什么要在createElement上使用createElement const a = document.createElementNS("http://www.w3.org/2000/svg", "svg") const b = document.createElement("svg") 资源: 名称空间使不同类型的XML有可能具有不同含义的相同标记。以
createElement
上使用createElement
const a = document.createElementNS("http://www.w3.org/2000/svg", "svg")
const b = document.createElement("svg")
资源:
createElement(“svg”)
创建了一个带有标记名svg
的HTML元素(不存在,没有带有该标记名的HTML元素)。但是createElements(“http://www.w3.org/2000/svg“,“svg”)
创建一个标签名为svg
(确实存在)的svg元素
这很重要,因为SVG元素定义了行为和各种方法,以及您可能需要的方法。尝试将其创建为HTML元素时,无法获得以下行为和方法:
const a=document.createElements(“http://www.w3.org/2000/svg“,“svg”);
const b=document.createElement(“svg”);
log(“SVGSVGElement的实例?”,SVGSVGElement的实例);//SVGSVGElement的实例?真的
console.log(“b instanceof SVGSVGElement?”,b instanceof SVGSVGElement);//SVGSVGElement的实例?假的
console.log(“a.currentScale的类型:,a.currentScale的类型);//a.currentScale的类型:数字
console.log(“b.currentScale的类型:,b.currentScale的类型);//b.currentScale的类型:未定义