4

'activate'および'beforeActivate'イベントで発生するアラートがあります。これらはどちらも発生しません。

Javascript

$(function () {
  $(".accordion").accordion({
    collapsible: false,
    active: true,
    activate: function (event, ui) { alert("activate"); },
    beforeActivate: function (event, ui) { alert("before activate"); }
  });
});

HTML

<div>
  <ul>
    <li>0</li>
    <div class="accordion">
        <li>
            <h3><a href="#">First</a></h3>
            <div>
                <ul>
                    <li>1</li>
                    <li>2</li>
                </ul>
            </div>
        </li>
        <li>
            <h3><a href="#">Second</a></h3>
            <div>
                <ul>
                    <li>3</li>
                    <li>4</li>
                </ul>
            </div>
        </li>
    </div>
  </ul>
</div>

ulの横にdivをネストする際の誤ったhtmlを認識しています。

4

3 に答える 3

13

1.8を使用している場合は、イベントとして使用する必要がchangeありchangestartます。

$( ".selector" ).accordion({
    change: function( event, ui ) {}
});

http://api.jqueryui.com/1.8/accordion

于 2013-01-24T14:58:26.007 に答える
3

jQueryUIライブラリへの適切な参照を確認して含めましたか?

CDN

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.js'></script>

通常のファイルリファレンス

<script type='text/javascript' src='.../yourDirectory/jquery-ui.js'></script>

以下に、jQueryUIリファレンスを含めた後に正しく機能する実際の例を示します。

于 2013-01-03T20:08:34.513 に答える
0

activateまた、beforeActivateイベントはjQuery UI 1.8には存在しません。これは、アラートが発生しない理由を説明しています。

Shazが述べたように、jQuery UI 1.8では、これらのイベントにはとという名前が付けられchangechangestartいます。

https://api.jqueryui.com/1.8/accordion/

jQuery UI 1.9以降、イベント名はとに変更されましactivatebeforeActivate

https://api.jqueryui.com/1.9/accordion/

詳細:

http://jqueryui.com/changelog/1.9.0/#accordion
Deprecated: changestart event; renamed to beforeActivate. (#6840, 088ef05, e0fe788) Deprecated: change event; renamed to activate. (#6842, 088ef05, e0fe788)

于 2018-04-05T15:49:32.537 に答える