簡単に言えば、いくつかのjqueryタブで作業しており、このコードを使用しています。
css of the tabs:
/* ---------- INNER CONTENT (ACCORDION) STYLES ----*/
.accordian {
background-color:#fff;
margin:20px auto;
color:red;
overflow:hidden;
}
#boxOut{
width:320px;
height:410px;
overflow:scroll;
background-color:#fff;
margin:154px auto auto 38px;
}
/*.accordian {
width: 400px;
margin: 50px auto;
}
*/
.accordian li {
list-style-type: none;
padding: 0 8px;
}
.dimension {
/* height: 400px;
*/}
.odd, .even {
font-weight: bold;
height: 27px;
padding-top: 3px;
padding-left: 10px;
border: 1px solid #d8d8d8;
background: #ececec;
color: #333;
border-radius: 8px;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
margin-left:6px;
margin-right:6px;
}
.logo{
width:300px;
margin:6px auto;
}
.intownLogo{
width:255px;
margin:6px auto;
}
.spaces{
margin-top:8px;
}
js:
$(function() {
// Hide all the content except the first
//$('.accordian li:odd:gt').hide();
$('.accordian li:odd').hide();
// Add the dimension class to all the content
$('.accordian li:odd').addClass('dimension');
// Set the even links with an 'even' class
$('.accordian li:even:even').addClass('even');
// Set the odd links with a 'odd' class
$('.accordian li:even:odd').addClass('odd');
// Show the correct cursor for the links
$('.accordian li:even').css('cursor', 'pointer');
// Handle the click event
$('.accordian li:even').click( function() {
// Get the content that needs to be shown
var cur = $(this).next();
// Get the content that needs to be hidden
var old = $('.accordian li:odd:visible');
// Make sure the content that needs to be shown
// isn't already visible
if ( cur.is(':visible') )
return false;
// Hide the old content
old.slideToggle(500);
// Show the new content
cur.stop().slideToggle(500);
} );
});
私のjqueryはせいぜい初心者なので、それが何をしているのかはわかりませんが、それを壊さずに編集することはできません...主は私が試したことを知っています笑。
私が問題を抱えている部分は、これらのタブでは機能しますが、.next() 関数などで機能するため、タブが開いているときに同じタブをクリックして閉じると、閉じないことです。別のタブがクリックされたときにのみ閉じます。
私が助けを必要としているのは....何か言うことです
「ロジック」このタブがすでに開いていてクリックされた場合、現在開いているタブを閉じます。つまり、たとえば、上記のコードに基づいて
疑似コードが来る:
if ( cur.is(':visible') && cur.is(':clicked') )
cur.slideToggle();
高度なご協力ありがとうございます。