javascript - 使用带有简单 html 链接的 window.location

标签 javascript html window.location

尝试制作一个带有一些链接的简单 HTML 页面,但尝试使其检测到您是本地用户或使用 SSH 端口转发。

一些信息;

我在本地访问网页时使用的URL:192.168.3.5/www/index.html

使用 SSH 端口转发时使用的 URL:127.0.0.1:9009/www/index.html

这是我在 index.html 页面中使用的完整代码......

<HTML>
- SABNZBD : Pick <A href="#" onclick="javascript:window.location.port=8080">LOCAL</a> or <A href="#" onclick="javascript:window.location.port=9001">REMOTE</a> Connection.
</HTML>

如果我使用此代码;

 onclick="javascript:window.location.port=9001"

它可以工作,它会返回

http://127.0.0.1:9001/www/#

我真的希望它返回这样的结果:

http://127.0.0.1:9001/

有什么办法可以使用下面的代码吗?那么它会删除路径名并仅使用我指定的主机名和端口名吗?因为我似乎无法让它工作。

onclick="javascript:window.location.hostname && window.location.port=9001"

谢谢 马特。

最佳答案

以下内容应该满足您的需要,连接字符串时您应该使用 + 而不是 &&

window.location = window.location.protocol + 
   '//' + window.location.hostname + ':9001';

您可以在 onclick 处理程序中使用上述内容:

onclick="window.location = ..."

您无需指定 onclick="javascript:",因为这是默认情况下假定的。

此外,最好使用以下内容,而不是使用内联点击处理程序:

如何同时使用上述两者(现代浏览器使用addEventListener,IE使用attachEvent):

或者,如果您想让生活变得更简单,您可以使用自动处理这些浏览器差异的 JavaScript 库。就像 jQuery 一样。

$('.class_on_first_link').click(function(){
  window.location = window.location.protocol + 
   '//' + window.location.hostname + ':8080';
});

$('.class_on_second_link').click(function(){
  window.location = window.location.protocol + 
   '//' + window.location.hostname + ':9001';
});

更新

上面省略号的意思是:

<a href="#" onclick="window.location = window.location.protocol + 
   '//' + window.location.hostname + ':9001';">Port 9001</a>
<a href="#" onclick="window.location = window.location.protocol + 
   '//' + window.location.hostname + ':8080';">Port 8080</a>

关于javascript - 使用带有简单 html 链接的 window.location,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13131464/

相关文章:

html - Bootstrap : CSS - height of list-group-item

javascript - eval() 的替代品

javascript - 当输入的值更改时,不会触发 Onchange 事件

javascript - 为什么我的 JavaScript 不能在 JSFiddle 中运行?

html - 如何防止文本在居中和范围 slider 值发生变化时移动?

javascript - 使用 window.location 时出现问题

Javascript 在页面更改时保留 URL 参数

javascript - 窗口位置 | javascript重定向

javascript - 如何在 JavaScript 中获取正确的引用网址?

javascript - 如何使用 normalizr 和/或 immutablejs 创建规范化数据结构