打开.txt文件并在JavaScript中滚动到其底部

打开.txt文件并在JavaScript中滚动到其底部,javascript,html,Javascript,Html,我的问题与以下问题相同,只是我想在同一选项卡/窗口中打开.txt文件,而不是在新选项卡/窗口中打开: 是否可以通过某种方式进行修改,使其仅在同一选项卡/窗口中工作 我尝试将\u comments更改为\u self,但随后滚动停止了。您提到的答案使用了。来自MDN: 窗口接口的open()方法将指定的资源加载到 具有指定名称的浏览上下文(窗口或选项卡)。如果 名称不存在,则打开一个新窗口并指定 资源被加载到其浏览上下文中 语法 var window = window.open(url, win

我的问题与以下问题相同,只是我想在同一选项卡/窗口中打开.txt文件,而不是在新选项卡/窗口中打开:

是否可以通过某种方式进行修改,使其仅在同一选项卡/窗口中工作


我尝试将
\u comments
更改为
\u self
,但随后滚动停止了。

您提到的答案使用了。来自MDN:

窗口接口的open()方法将指定的资源加载到 具有指定名称的浏览上下文(窗口或选项卡)。如果 名称不存在,则打开一个新窗口并指定 资源被加载到其浏览上下文中

语法

var window = window.open(url, windowName, [windowFeatures]);
参数

网址

一个DOMString,指示要加载的资源的URL。这个可以 是指向HTML页面、图像文件或任何其他资源的路径或URL 浏览器支持的。如果空字符串(“”)为 指定为url时,将在目标浏览中打开一个空白页 上下文

窗口名

指定浏览上下文(窗口或浏览器)名称的DOMString 选项卡)将指定的资源加载到其中;如果名称不正确 指示现有上下文时,将创建一个新窗口并提供 windowName指定的名称。然后可以将此名称用作目标 通过将链接和窗体指定为或的目标属性来创建链接和窗体 元素。名称不应包含空格。牢记 这将不会用作窗口显示的标题

\u comments
只是一个不应该使用的随机名称,以便在新窗口中打开它。你不能使用那个功能。要在同一窗口/选项卡中打开,您需要使用其他工具,例如

Window.location只读属性返回具有 有关文档当前位置的信息

虽然Window.location是只读位置对象,但您也可以 给它分配一个DOMString。这意味着您可以使用location 在大多数情况下,好像它是一个字符串:

location=http://www.example.com“

是的同义词

location.href=http://www.example.com“

示例#1:导航到新页面

无论何时将新值指定给 对于location对象,将使用URL加载文档,就像 已使用修改后的URL调用location.assign()。注意 安全设置,如CORS,可能会有效地防止这种情况发生

location.assign("http://www.mozilla.org"); // or
location = "http://www.mozilla.org";
然而,一旦加载了.txt文件,JavaScript就消失了。因此,在浏览器中加载一个普通的.txt文件可能不是最好的主意。如果使用jQuery,请考虑创建<代码> <代码>。您可以通过执行以下操作将文本文件内容放置在其中:

$("#textfile").load("file.txt", function() {
    // do your scrolling here
});
就滚动浏览而言,在纯JS中是很棘手的。如果您使用的是jQuery,则会出现以下问题。您将能够在函数中使用以下任一项:

$.scrollTo("250px");
$.scrollTo("50%");
$.scrollTo("+=25px");
$.scrollTo("max");

你不能那样做,你可以在一个小时内打开它iframe@SLaks我不明白为什么?您可以在
窗口
设置一个全局变量,例如
本地存储
历史
,然后使用
窗口
事件在加载新内容时执行任务,请参阅,具体取决于CORS问题,您可以使用AJAX加载内容,然后编写所需的HTML,将txt内容包装在“pre”标记中,完成后滚动。生成的网页(使用jQuery的
.load
功能时)显示my.txt文件的内容,但my.txt文件中的所有换行符都已删除。它把所有的文本合并成一个段落。你知道怎么解决这个问题吗?Thanksad
空白:前置行
到CSS中的
#textfile
,这样就不需要添加无用的
标记,并自动处理换行符,从而解决了问题。我已经测试了您的解决方案,发现您建议的代码(包括
.scrollTo
)产生了我想要的结果。谢谢你的帮助!