Javascript JS-获取当前网站名称(类似于Safari)

Javascript JS-获取当前网站名称(类似于Safari),javascript,uitableview,safari,titanium,bookmarks,Javascript,Uitableview,Safari,Titanium,Bookmarks,这很难解释,但我会尽力的!我正在用JavaScript编写我的应用程序,我正在使用Tianium IDE 所以,我正在尝试为我的应用程序创建一个书签菜单。我需要它从本质上获取网站的名称/内容标题,这样书签的标题看起来就不错了,而不仅仅是采取直接路线并将网站的Url塞进表中 举一个我所说的例子 如果你看,你会发现上面写的是Apple,而不是http://www.apple.com或apple.com,这正是我试图复制的。如果有一个功能你可能有或知道一点,请包括它!否则,任何输入都是有用的 谢谢

这很难解释,但我会尽力的!我正在用JavaScript编写我的应用程序,我正在使用Tianium IDE

所以,我正在尝试为我的应用程序创建一个书签菜单。我需要它从本质上获取网站的名称/内容标题,这样书签的标题看起来就不错了,而不仅仅是采取直接路线并将网站的Url塞进表中

举一个我所说的例子

如果你看,你会发现上面写的是
Apple
,而不是
http://www.apple.com
apple.com
,这正是我试图复制的。如果有一个功能你可能有或知道一点,请包括它!否则,任何输入都是有用的

谢谢


更新:如果我使用XCode,我找到了一个解决方案,对于那些感兴趣的人来说,钛也是如此。我知道
document.title
是这里的关键,但是在钛合金中运行它,它有点不同。我将在下面发表我的结论

它可能不适用于所有站点,也许有人可以改进它,但这里有一个javascript解决方案:

var sitename = location.hostname;
sitename = sitename.replace("http://", "");
sitename = sitename.replace("https://", "");
sitename = sitename.replace("www.", "");
sitename = sitename.substring(0, sitename.indexOf("."));
在上面的解决方案中,我们获取主机名,然后从主机名的开头到第一个句号提取一个子字符串。这样我们就可以删除主机名的
.com
部分

我们无法使用
sitename.lastIndexOf()
因为如果我们有一个
.co.uk
域,我们最终会得到类似
example.co
的东西

希望这有帮助

我找到了解决办法

对于Xcode:

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    NSString *theTitle=[webView stringByEvaluatingJavaScriptFromString:@"document.title"];
}
对于钛:

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    NSString *theTitle=[webView stringByEvaluatingJavaScriptFromString:@"document.title"];
}

theTitle=webView.evalJS(“document.title”)

听起来是个好主意。我还没能测试它,但当我有机会的时候,我会给你回复的!非常感谢。我很高兴你觉得它有用。我相信它可以改进,因为我认为它可能会在子域上崩溃。好吧,我认为这至少会比我目前拥有的更好。在这一点上,它实际上并没有非常好地工作,我将尝试修复它,但它当前每次都返回这个:
http://www
在那里。这应该可以解决这个问题,但目前它在子域中的效果不是很好……对于这里的目的来说非常好。实际上,我最终得到了document.title的准确名称