2014-01-16 5 views
0

Мне нужно показать скрытую навигацию на основе URL-адреса местоположения окна.Показать/скрыть DIV на window.location URL

Если кто-то может помочь в этом как можно скорее. ценю вашу помощь. Спасибо.

Я пробовал этот метод ниже, но он не работал.

<script> 
    $(document).ready(function(){ 
     var locate = window.location; 

     $('#yahooNav, #googleNav').hide(); 

     if (locate.indexOf("hrpassport-dev.bns") == 0) { 
      $('#googleNav').show(); 
     } else if (locate.indexOf("hrpassport-uat.bns") == 0) { 
      $('#yahooNav').show(); 
     } 
    }); 
</script> 

</head> 

<body> 


    <ul id="googleNav"> 
     <li> 
      <a href="http://www.google.com/glo/glo/english/ss/benefits/highlights/player.html" title="2014 Plan Highlights" target="_blank">2014 Plan Highlights </a> 
     </li> 
     <li> 
      <a href="http://www.google.com/glo/glo/english/ss/benefits/enrolments/player.html" title="How to Prepare for Enrolment" target="_blank">How to Prepare for <br />Enrolment</a> 
     </li> 
    </ul> 

    <ul id="yahooNav"> 
     <li> 
      <a href="http://www.yahoo.com/glo/glo/english/ss/benefits/highlights/player.html" title="2014 Plan Highlights" target="_blank">2014 Plan Highlights </a> 
     </li> 
     <li> 
      <a href="http://www.yahoo.com/glo/glo/english/ss/benefits/enrolments/player.html" title="How to Prepare for Enrolment" target="_blank">How to Prepare for <br />Enrolment</a> 
     </li> 
    </ul> 


</body> 
</html> 

ответ

0

Использование

var locate = window.location.href; 

вместо var locate = window.location;

Существует нетwindow.location.indexOf так location не имеет какого-либо метода indexOf. Где, как window.location.href, вы найдете строку адреса URL вашего текущего окна.

EDIT:

Кроме того, locate.indexOf("hrpassport-dev.bns") == 0 проверяет, является ли URL-адрес начинается с текстом, вы проверить, как этот locate.indexOf("hrpassport-dev.bns") > -1, чтобы проверить, если он содержит в URL.

+0

Привет, я попытался сделать вышеупомянутые изменения, но он все еще не работает. – user3203089

+0

@ user3203089 - Любая ошибка консоли? Вы правильно включили jquery. Что дает вам 'console.log (window.location.href)'? – Krishna

+0

Ниже приведена ошибка. WEB-страница сведения об ошибке Агент пользователя: Mozilla/4.0 (совместимый; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0 0,30729; Media Center PC 6.0; .NET4.0C; InfoPath.3; .NET4.0E) Отметка: Чт, 16 января 2014 15:56:49 UTC Сообщение: Объект ожидается линия: 8 Char: 1 Код: 0 URI: https: //hrpassport-dev.bns/HRPassIIS/CanadianBenefitsPlan_Communication/Untitled-4.html – user3203089

0

Проблема состоит в два раза, один из которых уже упоминалось: window.location.href вместо window.location. Во-вторых, использование indexOf:

if (locate.indexOf("hrpassport-dev.bns") > -1) { 
    $('#googleNav').show(); 
} else if (locate.indexOf("hrpassport-uat.bns") > -1) { 
    $('#yahooNav').show(); 
} 

indexOf возвращает расположение строки при условии (MDN documentation, чтобы показать, что я имею в виду), и если ваш window.location.href начинается с этой строки, это не будет правдой. Установив его как > -1, вы в основном говорите «существует ли оно в строке».

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