скрытая статья не ложится на тумблер - PullRequest
1 голос
/ 04 декабря 2011

Вот моя скрипка: http://jsfiddle.net/mikeritter/prsfM/28/

Вот мой JQuery:

$(document).ready(function(){
    function howdy(n){
        alert('Howdy '+n+'!');
    }

    function hideArts(){
        $('article').hide();
    }
    hideArts();

    $("a.toggleart").click(function(){
        var cur = $(this).parent().index();
        //alert(cur);
        $('article').eq(cur).toggle();
    });
});

Почему статья сразу исчезает после переключения?

Ответы [ 3 ]

1 голос
/ 04 декабря 2011

У вас есть <a>, который отправляет пользователя на новую страницу. Вы должны отменить событие <a>, добавив href="#" или onclick="return false;"

Отправка пользователя на href="" перезагрузит страницу, если вы не отмените ее.

0 голосов
/ 04 декабря 2011

Изменить

$("a.toggleart").click(function(){
    var cur = $(this).parent().index();
    $('article').eq(cur).toggle();
});

на

$("a.toggleart").click(function(e){ // added the e as the parameter, it maps to the event
    e.preventDefault(); // this line will cancel the default link action ..
    var cur = $(this).parent().index();
    $('article').eq(cur).toggle();
});

Чтобы отменить функциональность ссылок по умолчанию ...

Демонстрация на http://jsfiddle.net/gaby/prsfM/29/

0 голосов
/ 04 декабря 2011

Попробуйте this JSFiddle ; Я исправил вашу пару исправлений:

  • Вашему обработчику click необходимо e.preventDefault(), чтобы остановить <a> при переходе на новую страницу:

    $("a.toggleart").click(function(e) {
        e.preventDefault();
    
  • Вам не нужно скрывать свои панели с помощью JavaScript. Простой

    article {
        display: none;
    }
    

    Хватит.

Единственное, что вам нужно сделать, чтобы решить вашу проблему, это добавить

e.preventDefault();

К вашему обработчику кликов, который останавливает браузер, выполняющий событие по умолчанию , которое в данном случае переходит на другую страницу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...