本应根据url显示/隐藏文本的javascript不起作用
javascript that is supposed to show/hide text according to url is not working
这段代码应该根据页面的url显示/隐藏文本,但它不起作用:
var pages = window.location.href;
if(pages == "page1.html"){
//display page 1 text
}
else if(pages == "page2.html"){
//display page 2 text
}
http://jsfiddle.net/yp8h2moe/1/
我在本地测试了它,但没有成功,所以我用jsfiddle进行了测试,但不幸的是,每次保存jsfiddler时,都会得到一个新的url。
更新
这是更新后的代码,我可以指定文件扩展名来运行它,但我只需要使用url来运行它:
<script>
var pages = window.location.href;
if( pages.split('/').pop() === 'http://akecheta.com/free-blogger-templates/' ) {
document.write('<b>Hello World 1</b>');
}
else if( pages.split('/').pop() === 'http://akecheta.com/free-blogger-templates/' ) {
document.write('<b>Hello World 2</b>');
}
</script>
解决方案如何以正确的方式在Javascript中插入HTML文本?
href
的值通常是一个绝对URL,因此必须按如下方式使用.indexOf()
:
var pages = window.location.href;
if(pages.indexOf("page1.html") > -1){
//display page 1 text
}
else if(pages.indexOf("page2.html") > -1 ){
//display page 2 text
}
或者,您可以使用.split()
和.pop()
,假设您的URL没有查询字符串:
if( pages.split('/').pop() === 'page1.html' ) {
//...
更新
当使用绝对URL或其较大部分时,不需要使用.split()
和.pop()
。请记住,split
创建一个数组,而pop
获得该数组的最后一个元素。对于绝对URL,您将不需要此过程。
var pages = window.location.href;
if( pages.indexOf( 'http://akecheta.com/free-blogger-templates/' ) > -1 ) {
document.write('<b>Hello World 1</b>');
}
else if( pages.indexOf( 'http://akecheta.com/free-blogger-templates/xx' ) > -1 ) {
document.write('<b>Hello World 2</b>');
}
它不起作用,因为在您的jsfiddle中var pages
是"http://fiddle.jshell.net/_display/ "
请尝试console.log,并确保在需要时也对其进行修剪。。对于page1.html等,您必须将其与完整/绝对路径进行比较
如果您的URLhttp://wwww.example.com/page1.html,则需要URL路径。所以,代码看起来像下面
var pages = location.pathname;
if(pages == "/page1.html"){
//display page 1 text
}
else if(pages == "/page2.html"){
//display page 2 text
}
相关文章:
- Servlet对浏览器上显示的纯文本Javascript的响应
- 删除选定文本javascript前后的特定文本
- 在两个括号内插入文本 - Javascript
- 获取文本javascript+iframe
- 语音到文本JavaScript,HTML5
- 使用谷歌融合表格地图的网页文本/JavaScript未显示
- 在显示和隐藏文本(javascript)之间切换
- 使用哈希标记保存文本(Javascript - PHP - MySQL)
- 停止闪烁文本 JavaScript
- 如何计算一个字母在文本javascript中出现的次数
- 有效地突出显示文档中的文本 (JavaScript)
- 将变量传递给文本 javascript
- 如何暂停文本 Javascript / var textarray
- 从段落中搜索文本 - Javascript
- 如何使用 id 输入类型=“文本”JavaScript 中的值设置自动 2 个十进制数
- 替换文本 JavaScript .append()
- 语音到文本JavaScript识别医学词典
- 在提取的文本 JavaScript 中搜索关键字
- 如何在HTML中将文本javascript显示为正常正文的一部分
- 单击图像时更改段落文本(Javascript)