我知道如何获取页面的 URL,但是如何仅提取域和域?
无论带或不带 www,它都必须返回相同的值,并且无论文件如何,带或不带斜杠等,它都必须返回相同的值。
所以www.domain.com
会返回domain.com
,domain.com/index.php
也会返回相同的。
这可能吗?
如果是这样,有没有办法在不打电话的情况下做到这一点ExternalInterface.call('window.location.href.toString')
?
感谢您的帮助!
我知道如何获取页面的 URL,但是如何仅提取域和域?
无论带或不带 www,它都必须返回相同的值,并且无论文件如何,带或不带斜杠等,它都必须返回相同的值。
所以www.domain.com
会返回domain.com
,domain.com/index.php
也会返回相同的。
这可能吗?
如果是这样,有没有办法在不打电话的情况下做到这一点ExternalInterface.call('window.location.href.toString')
?
感谢您的帮助!
您可以使用 loaderInfo 类,然后使用正则表达式对其进行修剪。
像这样。这个 found[0] 的踪迹会将域返回到 .com。
package{
import flash.display.LoaderInfo
import flash.display.MovieClip
public class sample extends MovieClip {
public var urlStr:String;
public function sample (){
getLocation(this.loaderInfo.url);
}
public function getLocation(urlStr:String){
var urlPattern:RegExp = new RegExp("http://(www|).*?\.(com|org|net)","i");
var found:Object = urlPattern.exec(urlStr);
trace(found[0]);
}
}
}
在 Flex 中使用
Application.application.url
但是在直接 Flash 中,您需要以不同的方式进行操作
http://renaun.com/blog/2008/10/16/264/
然后当然你可以根据需要修改结果,因为它是一个字符串。
var domain = "http://www.example.com/";
var pathArray = domain.split("//");
pathArray = pathArray[1].split("/");
trace(pathArray[0]); //traces www.example.com