Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么可以';t document.write是否可用于使用Dom脚本加载模块?_Javascript - Fatal编程技术网

Javascript 为什么可以';t document.write是否可用于使用Dom脚本加载模块?

Javascript 为什么可以';t document.write是否可用于使用Dom脚本加载模块?,javascript,Javascript,年,我得到了以下答案: 查看Google的maps脚本,它无法加载Geocoder模块,因为它使用document.write来加载,该方法必须在解析时从HTML文档中包含的文件运行,而不是像您在这里所做的那样使用DOM脚本导入 哪一种方法必须在备份时从html中包含的文件运行?我该怎么做? 使用DOM脚本导入的是什么?如何识别DOM脚本 我对javascript非常陌生,我不太理解这里的引用 isDom脚本是指处理已加载的文档,并操作“DOM元素”(DOM=“document object m

年,我得到了以下答案:

查看Google的maps脚本,它无法加载Geocoder模块,因为它使用document.write来加载,该方法必须在解析时从HTML文档中包含的文件运行,而不是像您在这里所做的那样使用DOM脚本导入

哪一种方法必须在备份时从html中包含的文件运行?我该怎么做? 使用DOM脚本导入的是什么?如何识别DOM脚本


我对javascript非常陌生,我不太理解这里的引用

isDom脚本是指处理已加载的文档,并操作“DOM元素”(DOM=“document object model”…网页组件的javascript表示)。您可以添加和删除元素,并操纵其特性,如样式和内容

与更改html文本本身相反,在将其转换为元素之前,使用document.write。document.write仅在页面从文本转换为网页组件的一开始起作用。这是一种“老方法”,因为在javascript的旧时代,它是做事情的唯一方法。在某些情况下,它仍然有用,但现在已经被避免了

dom脚本的示例:

var elem = document.getElementById("someelement");
var childElem = document.createElement ("DIV");
childElem.innerHTML = "this is a <i><b>test</b></i>";
elem.appendChild (childElem);
var elem=document.getElementById(“someelement”);
var childElem=document.createElement(“DIV”);
childElem.innerHTML=“这是一个测试”;
依附儿童(childElem);

注意,使用“iNelHTML”是一种常见的中间点。它被用于post页面加载,但它通过提供文本html代码来工作。根据上下文的不同,它可能被视为或可能不被视为“dom脚本”。

是一种旧方法,它在加载脚本时在脚本所在的位置将HTML插入页面。因此,它通常用于JavaScript“小部件”,可以复制并粘贴到网页中。但是,如果页面已完成加载,它所做的就是开始创建包含该HTML的新页面

<div id="foo"> 
    <script type="text/javascript"> 
        document.write("<h1>Main title</h1>") 
    </script> 
</div>

文件。书写(“主标题”)
这与jQuery提供的函数或它使用的底层DOM方法形成对比,后者必须在页面加载后调用

// The jQuery way
$(document).ready(function() {
    $('#foo').append('<h1>Main title</h1>'); 
});

// The plain JS way
window.onload = function() {
    var h1 = document.createElement('h1');
    h1.appendChild(document.createTextNode('Main title'));
    document.getElementById('foo').appendChild(h1);
};
//jQuery方式
$(文档).ready(函数(){
$('#foo')。追加('主标题');
});
//朴素的方式
window.onload=函数(){
var h1=document.createElement('h1');
h1.appendChild(document.createTextNode(“主标题”);
document.getElementById('foo').appendChild(h1);
};
如果根本无法更改小部件(例如,它由第三方提供服务),并且您必须(例如)从jQuery加载小部件,那么您可以在加载之前执行您希望它们执行的操作

请记住,当一个页面上有多个小部件时,要使其正常工作,您必须确保第一个小部件已完全加载,然后再尝试加载第二个小部件