如何检测URL位置是否在此页面和同一域的任何其他子文件夹上

How to detect if URL location is on this page and any other sub-folders of same domain

本文关键字:任何 文件夹 其他 检测 何检测 URL 是否 位置      更新时间:2023-09-26

如标题所示。但我的意思是。

说我在www.google.com/someRandomFolder/dfsjfkdjff.html

我得到了像这样的代码

if(location == "www.google.com/*") {
   Execute some Code
}

它将执行。在www.google.com/之后的"*"表示它将运行。只要第一部分是……

那么有什么方法可以做到这一点呢?因为我得到了一个URL在最后会改变的页面因为它在URL中传递变量。所以我不能为它设置一个工作位置

如果我没有解释,我会在下面留下评论,我会尽量详细说明。

编辑:你知道,在Java或c++中,你可以通过执行awt。color。red来获得包的单个组件;或者您可以通过执行awt来获得整个包。所以基本上我想做同样的事情你可以声明获得整个包,但有一个网页位置。

因为我会有http://www.someWebpage.com/?id=54而"id"并不总是54所以我不能使用这个代码

if(location == "http://www.someWebpage.com/?id=54") {
   Execute some Code
}

因为如果它是http://www.someWebpage.com/?id=25呢?它将不再执行该代码。我总是可以使用substr(x,endX)来完成我想要的,但我想知道是否有更好的方法。

window.location基本上是一个类的实例,它存储有关您当前位置的信息。它有各种属性和方法来操作和检索关于页面url的数据。

例如,如果您在控制台中输入window.location,您将得到如下内容:

Location {replace: function, assign: function, ancestorOrigins: DOMStringList, origin: "https://developer.mozilla.org", hash: ""…}
ancestorOrigins: DOMStringList
assign: function () { [native code] }
hash: ""
host: "developer.mozilla.org"
hostname: "developer.mozilla.org"
href: "https://developer.mozilla.org/en-US/docs/Web/API/Window.location"
origin: "https://developer.mozilla.org"
pathname: "/en-US/docs/Web/API/Window.location"
port: ""
protocol: "https:"
reload: function reload() { [native code] }
replace: function () { [native code] }
search: ""
toString: function toString() { [native code] }
valueOf: function valueOf() { [native code] }
__proto__: Location

那么你所要做的就是选择包含你想要的信息的属性。在您的示例中,您想要检查主机名是否正确,因此您将访问window.location.hostname

阅读更多关于窗口的信息。这里位置