给定 HTML 文件的 URL 地址,如何读取内容
given a url address of a html file, how to read the content?
我需要做一些简单的事情,
我有canvas.html
<div id="dialog" title="Basic dialog">
<p>Something.</p>
</div>
现在我想阅读canvas.html
的内容
function LoadPage(href)
{
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", href, false);
xmlhttp.send();
return xmlhttp.responseText;
}
...
var canvasPanelURL = "myfolder/canvas.html";
var content = LoadPage(canvasPanelURL);
..
上面的代码是正确的。
可悲的是,XMLHttpRequest
被弃用,我想使用 FileReader
但输入是 blob,还有其他方法可以做到这一点而不是使用 XMLHttpRequest
?
编辑
感谢您的评论,同步XMLHttpRequest
已被弃用,我只想知道是否有任何其他选择在给定 url 的情况下读取 html 文件(我应该说,这个问题与XMLHttpRequest
松散相关)
不幸的是,
主线程(即运行 javascript 的请求)上的同步请求已被弃用。
注意:从 Gecko 30.0(Firefox 30.0/Thunderbird 30.0/SeaMonkey 2.27)开始,由于对用户体验的负面影响,主线程上的同步请求已被弃用。
但是,您仍然可以使用 Web 辅助角色运行同步 Web 请求。
使用 Web worker 的替代方法是在异步请求的回调中进行处理
function LoadPage(href, cb)
{
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", href, true);
request.onload = function() {
if (request.status >= 200 && request.status < 400) {
cb(request.responseText);
}
};
xmlhttp.send();
}
var canvasPanelURL = "myfolder/canvas.html";
LoadPage(canvasPanelURL, function(content) {
// do stuff with content
});
然后,您可以手动创建FileReader
,因为您可以从条目数组(在本例中为 1)创建Blob
。我不能说如果你已经使用 AJAX 加载了你的 html 文件,我能明白你为什么要这样做。
var blob = new Blob([content]);
var reader = new FileReader();
reader.onloadend = function() {
console.log(reader.result);
};
reader.readAsBinaryString(blob);
相关文章:
- 从桌面读取python文件时高亮显示代码
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 使用Dnamics CRM 2011中的JavaScript读取子网格的所有记录,而不考虑活动页面
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- TypeError:无法读取属性'推'未定义的JavaScript
- 同样,同样的错误'ahorcado.js:26未捕获类型错误:无法读取属性'beginPath'
- 未捕获的TypeError无法读取未定义的属性socialsharing
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- 字符串在将其传递给另一个活动Android JavaScript时读取Null
- NodeJS-readline暂停和恢复事件发射器(逐行读取)
- 未捕获的类型错误:无法读取属性'删除'的未定义
- AngularJS指令出错-无法读取属性'编译'的未定义
- 未捕获的类型错误:无法读取属性'name'即使它存在,也无法定义
- 如何在Javascript中读取unsigned int
- 如何读取表单中的输入数据
- 通过传递图像的URL通过javascript读取/处理图像-类似于PHP中的file_get_contents
- 看到“;未捕获的类型错误:无法读取属性'weight'未定义的“;尽管按照字面上的指示
- angularjs无法读取未定义的属性then
- 防止用户在文本字段中键入和粘贴,并且只允许从USB条形码读取器读取
- Html5文件读取器-读取本地Json数组文件并仅显示特定部分