0
클릭 한 탐색 컨테이너마다 쿠키를 설정하고 있습니다.splice()가 올바르게 작동하지 않습니다.
쿠키 값을 조인하고 설정 한 배열을 설정합니다. 클릭하면 다시 배열에서 제거됩니다.
어떻게 든 버그가 있습니다.
다른 요소를 클릭 한 후에 만 연결됩니다. 그리고 그것은 이상하게 행동합니다.
그것은 splice
가
var navLinkToOpen;
var setNavCookie = function(value){
var isSet = false;
var checkCookies = checkNavCookie()
setCookieHelper = checkCookies? checkCookies.split(","): [];
for(i in setCookieHelper){
if(value == setCookieHelper[i]){
setCookieHelper.splice(value,1);
isSet = true;
}
}
if(!isSet){setCookieHelper.push(value)}
setCookieHelper.join(",")
document.cookie = "navLinkToOpen"+"="+setCookieHelper;
}
var checkNavCookie = function(){
var allCookies = document.cookie.split(';');
for (i = 0; i < allCookies.length; i++){
temp = allCookies[i].split("=")
if(temp[0].match("navLinkToOpen")){
var getValue = temp[1]
}
}
return getValue || false
}
$(document).ready(function() {
$("#LeftNav li").has("b").addClass("navHeader").not(":first").siblings("li").hide()
$(".navHeader").click(function(){
$(this).toggleClass("collapsed").nextUntil("li:has('b')").slideToggle(300);
setNavCookie($('.navHeader').index($(this)))
return false
})
var testCookies = checkNavCookie();
if(testCookies){
finalArrayValue = testCookies.split(",")
for(i in finalArrayValue){
$(".navHeader").eq(finalArrayValue[i]).toggleClass("collapsed").nextUntil(".navHeader").slideToggle (0);
}
}
});
감사합니다. 나는 당신이 말하는 것을 들었습니다. 아마 올바른 방법 인'splice()'를 사용하지 않았을 것입니다. 내가 원하는 것은 발견 된 번호를 제거해야한다는 것입니다. – adardesign
네가 원하는 것보다 네가 원하는 것일 뿐이다. :) 그냥 평범한 것 대신에 그냥 바꾼다. – fmsf