2013-05-02 2 views
0

Я никогда не писал здесь раньше, и я надеюсь, что вы можете мне помочь. У меня есть функция js, которая при щелчке будет переключать отображение и скрывать абзац. Однако мне нужно вложить их друг в друга. Другими словами:Toggle Open/Close JS function

1) Некоторые текстовые здесь // Нажмите, чтобы открыть

2)This text opens upon click //Click to open 

     3)This text opens upon click. 

Они, как я это написанное сейчас, нажав 1 открывается 2, но нажав 2 закрывает все. Я просто изучаю JS сейчас, поэтому теперь я лучше всех, поэтому я надеюсь, что здесь могут помочь профессионалы. Вот как выглядит моя функция сейчас http://pastebin.com/ZUzp1pUJ У кого-нибудь есть идеи?

+0

У вас, кажется, есть jQuery, загруженный на этом примере, но вы его не используете, это сделает вашу жизнь намного проще. Если вы уже загружаете его на свою страницу, вам действительно следует воспользоваться им. – naththedeveloper

+0

Кроме того, вот немного [скрипка] (http://jsfiddle.net/VGcZ8/), вы можете пригодиться. – naththedeveloper

+0

Если у вас есть ясный пример в Интернете, то, что вы хотели бы, чтобы эта последовательность переключений выглядела так же, вы получите быстрый ответ. – blackhawk

ответ

1

Я заметил, что вы включили jQuery в свой HTML, но вы его нигде не используете, я предполагаю, что вы новичок в jQuery и готовы его использовать.

Вот что вы делаете.

Сначала вы должны прочитать на jQuery Reference. Это чрезвычайно полезно.

Вещи, которые вы должны дать дополнительное внимание на следующие:

  • jQuery Selectors - использование $ (». MyClass') вместо getElementsByClassName
  • jQuery Toggle - или любой из ее компаньонов (slideToggle, fadeToggle) делать то, что вы просили.
  • , а что касается вашего вопроса - stopPropagation - который позволяет вам запускать только те переключатели, которые вы нажали, и остановить событие от пузыря вверх через дом. (и не вызывать его родителей.)

Эти три комбинированных должны выполнять работу. Удачи.