Jquery не работает правильно! - PullRequest
0 голосов
/ 28 марта 2011

У меня есть следующий скрипт -

   $(document).ready(function () {

    $("div.settings_frame_tabs_frame").(function () {

        $("div.settings_frame_tabs_heading" ,this).click(function () {

            $("div.settings_frame_tabs_content" ,this).animate({
              height : 'toggle'
            }, 400, 'linear', function() { });

        });

    });

  });

и следующий HTML-код -

  <div id="settings_frame_email_id_update" class="settings_frame_tabs_frame">
    <div class="settings_frame_tabs_heading">Email ID</div>
    <div class="settings_frame_tabs_content">
          <form action="<?php echo PATH; ?>domail_res/scripts/php/functions/settings_func.php?update=email_id" method="POST">
                 <table width="100%">
                         <tbody>
                                 <tr>
                                      <td align="left" width="35%">
                                           Enter your new <b>Email ID</b>
                                      </td>
                                      <td align="left">
                                           <input type="textbox" class="settings_frame_tabs_textbox" name="settings_email_id" />
                                      </td>
                                 </tr>
                                 <tr>
                                      <td></td>
                                      <td align="right">
                                           <input type="submit" class="settings_frame_tabs_submit_btn" value="Update" />
                                      </td>
                                 </tr>
                         </tbody>
                 </table>
          </form>
    </div>

Вот ссылка на Jsfiddle с CSS. http://jsfiddle.net/EDxWh/ У кого есть идеи! Пожалуйста, дайте мне знать, если у вас есть идеи, пожалуйста.

Заранее спасибо!

http://jsfiddle.net/ye6tX/ -> С помощью JS / HTML

Ответы [ 2 ]

2 голосов
/ 28 марта 2011

Синтаксическая ошибка .... консоль должна была сказать вам, что:

 $("div.settings_frame_tabs_frame").(function () {
 //                          -------^

Вот, пожалуйста,

$("div.settings_frame_tabs_frame").each(function () {
    $("div.settings_frame_tabs_heading", this).click(function () {
        $(this).next("div.settings_frame_tabs_content").animate({
          height : 'toggle'
        }, 400, 'linear');
    });
});

each может не потребоваться, в зависимости от того, сколько элементов .settings_frame_tabs_frame существует. Вы также можете сделать:

 $("div.settings_frame_tabs_frame div.settings_frame_tabs_heading")
     .click(function () {...});

Другая проблема заключалась в том, что div.settings_frame_tabs_content - это не ребенок div.settings_frame_tabs_heading, а брат, поэтому вы должны использовать $(this).next().

Рабочая ДЕМО

0 голосов
/ 28 марта 2011

Разве вы что-то не упустили раньше (функция () в этой строке:

$("div.settings_frame_tabs_frame").(function () {

?

...