2013-10-26 3 views
0

Когда пользователь переходит на мой сайт и нажимает на статью на главной странице статей, мне бы хотелось, чтобы кнопка «Назад к статьям» отображалась только на этих подстраницах. Как указать эти статьи в папке статей? Могу ли я использовать подстановочный знак * .html, чтобы получить все html-страницы под папкой статей в пути? Я новичок в javascript. Благодаря!Как показать кнопку на определенных веб-страницах с помощью javascript

Вот код, у меня есть:

--HTML5 

<a href="../articles/articles.html" class="btnArticles">Back to Articles</a> 

--CSS3 

.btnArticles { 
    background-color: #BA6222; 
    color: #ffffff!important; 
    border-radius: 90px; 
    box-shadow: 5px 5px 5px #E49135; 
    padding: 15px 10px; 
    float:right; 
    text-decoration: none; 
    margin-left: 90px; 
    display:none; 

} 

.btnArticles:hover { 
    background-color: #BA6222; 
    opacity: .8; 
    color: #E7E7E7!important; 
} 

--JS 

//Articles button show/hide only on html pages under the articles folder 

$(document).ready(function(){ 

    if (window.location.pathname == "[href='nameofsite/articles/*.html']"){ 
     $(".btnArticles").show(); 
    } 
     else 
     { 
      $(".btnArticles").hide(); 
     } 
}); 
+1

По крайней мере, покажите нам, как будут выглядеть URL-адреса, страницы, на которых должна отображаться кнопка, и страницы, на которых это не должно быть. Также имейте в виду, что отображение/скрытие кнопки с помощью JavaScript не является безопасным (в зависимости от причины показа/скрытия), поскольку оно все еще присутствует в HTML. Это должно быть сделано на стороне сервера, с помощью [tag: ruby], [tag: php], [tag: asp], [tag: .net] и т. Д. –

+0

Я согласен с вами. Я также изучаю asp.net и должен будет обновить сайт с помощью серверных сценариев в ближайшем будущем. Спасибо за ваш вклад. – user2923855

ответ

0

Вы можете попробовать это, шоу кнопки, если это в/папке статей, но не /articles/articles.html:

$(document).ready(function(){ 
    if(window.location.pathname.match(/\/articles/) 
    && (! window.location.pathname.match(/\/articles\/articles\.html/))) 
    { 
    $(".btnArticles").show(); 
    } 
    else 
    { 
    $(".btnArticles").hide(); 
    } 
}); 
+0

Спасибо за ваш вклад. ваше предложение слегка сработало. Кнопка не отображается на главной странице статей, но отображается на каждой странице, включая вспомогательные статьи. Мне просто нужно, чтобы они показывали в подзаголовках. вот сайт моего клиента, чтобы вы могли видеть, что я имею в виду nav для ссылки на статьи: henriwtartt.com – user2923855

+0

@ user2923855, мы найдем минимальное решение, которое исправляет вашу потребность запускать как можно быстрее браузер. – jacouh

+0

Я очень ценю это. Я буду играть с ним сам и пост, если я получу его работу. – user2923855

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