2010-05-17 2 views
10

Я хочу отобразить определенное сообщение на определенной странице.Если URL-адрес содержит это, сделайте это в Javascript

Пусть имя страницы, которую я хочу, чтобы отобразить что-то на называется «foo_page.html»,

Как я могу это сделать с помощью JavaScript?

+0

Просьба предоставить более подробную информацию. – SLaks

ответ

28

Вы можете сделать это следующим образом:

if(document.URL.indexOf("foo_page.html") >= 0){ 
...show your message 
} 
+3

Наверное, хотите '> = 0'. – Syntactic

+0

Хорошее место, спасибо. Ред. – GShenanigan

1
var index = document.location.lastIndexOf("/"); 
var filename = document.location.substr(index); 

if(filename.indexOf("foo_page.html")>-1){ 
    alert("OK"); 
} 
1

Вы можете использовать document.location, чтобы выяснить, какой URL-адрес посетитель.

Попробуйте это: Теперь

<script type="text/javascript"> 
var currentPage = document.location.href.substring(document.location.href.lastIndexOf("/")+1, document.location.href.length); 
</script> 

Ваш «CurrentPage» переменная должна содержать имя страницы вы находитесь. Вы можете использовать это, чтобы выбрать действие.

0
var loc = window.location.pathname.split("/"), 
    size = loc.length 

    alert(loc[size]) 

дает вам последнюю часть, разделенную «/» большую часть времени html, php или любой другой файл. Но я бы использовал классы на вашем теле, чтобы узнать, где вы находитесь. Или просто проверьте, существует ли элемент, который вы хотите что-то сделать, на странице. Прежде чем выполнять свою функцию, например,

function example(element) { 
     if(getElementById(element).length) { 
      // now you are sure that a element exists on the page 
     }else{ 
     return false; //if not just do nothing 
     } 
    } 
    example("myId") 
+1

'loc [size-1]' или просто: 'var filename = location.pathname.split ('/'). Pop();'. (И почему '.length' на узле элемента?) – bobince

+0

Что такое pop() делать точно? чтобы получить последний кусок массива. Thx для tipp – meo

Смежные вопросы