Use jQuery.on() properly in accordion code. Some other cleanup.

see #23890.

git-svn-id: https://develop.svn.wordpress.org/trunk@23856 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Mark Jaquith 2013-03-29 08:28:58 +00:00
parent 677254275c
commit 9910c64764

View File

@ -1,17 +1,16 @@
jQuery(document).ready( function($) {
// Expand/Collapse
$('.accordion-section-title').on('click keydown', function( event ) {
if ( event.type === 'keydown' && 13 !== event.which ) // enter
$('.accordion-container').on( 'click keydown', '.accordion-section-title', function(e) {
if ( e.type === 'keydown' && 13 !== e.which ) // "return" key
return;
e.preventDefault(); // Keep this AFTER the key filter above
var clicked = $( this ).closest( '.accordion-section' );
var section = $( this ).closest( '.accordion-section' );
if ( clicked.hasClass('cannot-expand') )
if ( section.hasClass('cannot-expand') )
return;
clicked.closest( '.accordion-container' ).find( '.accordion-section' ).not( clicked ).removeClass( 'open' );
clicked.toggleClass( 'open' );
event.preventDefault();
section.closest( '.accordion-container' ).find( '.accordion-section' ).not( section ).removeClass( 'open' );
section.toggleClass( 'open' );
});
});