[英]Can't make javascript load .txt file, to load links
我做了一个功能,可以带您到随机链接,但此刻我有很多链接,并且想知道如何使javascript读取包含所有链接的文本文件。
我现在拥有的代码不起作用,我尝试了其他类似方法,但是没有任何效果。
<script>
var sites = [
function readTextFile("file:///Nicklas Behrend/Desktop/links.txt");
{
var rawFile = new XMLHttpRequest();
rawFile.open("GET", file, false);
rawFile.onreadystatechange = function ()
{
if(rawFile.readyState === 4)
{
if(rawFile.status === 200 || rawFile.status == 0)
{
var allText = rawFile.responseText;
alert(allText);
}
}
}
rawFile.send(null);
}
];
function randomSite() {
var i = parseInt(Math.random() * sites.length);
location.href = sites[i];
}
</script>
看起来您有语法错误。 可能应该是这样的:
var sites = [];
function readTextFile(file, callback) {
var rawFile = new XMLHttpRequest();
rawFile.open("GET", file, false);
rawFile.onreadystatechange = function () {
if(rawFile.readyState === 4) {
if(rawFile.status === 200 || rawFile.status == 0) {
var allText = rawFile.responseText;
alert(allText);
callback(allText);
}
}
}
rawFile.send(null);
}
readTextFile("file:///Nicklas Behrend/Desktop/links.txt", filesText =>{
sites = filesText.split('\n');
});
function randomSite() {
var i = parseInt(Math.random() * sites.length);
location.href = sites[i];
}
您试图同时声明和运行该函数,这都是错误的。 另外, XMLHttpRequest()
是异步的,因此您必须具有一个将返回文本的回调。
一旦有了它,就可以将文本拆分为多个站点(在这种情况下,我假设它们是用换行符分隔的)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.