하위메뉴가 없으면 대메뉴 클릭 시 바로 이동 채택완료
홀로그램웹
2년 전
조회 1,252
</p>
<p><nav class="right">
<?php
$i=1;
foreach($menu_datas as $row) {
$cls = "hasDep2";
if(!is_array($row['sub'])) {
$cls = "";
}
?>
<ul>
<li>
<a href="<?php echo $row['me_link']; ?>" ><?php echo $row['me_name'] ?></a>
<ul class="sub_depth sub_depth01" >
<?php
if(!is_array($row['sub'])) {
$i++;
continue;
}
?>
<?php
foreach($row['sub'] AS $row2) {
?>
<li ><a href="<?php echo $row2['me_link']; ?>" target="_<?php echo $row2['me_target']; ?>"><?php echo $row2['me_name'] ?></a></li>
<?php
}
?>
</ul>
</li>
</ul>
<?php
$i++;
}
?>
</nav></p>
<p>
</p>
<p> $('.gnb > ul').clone().appendTo('#header .right');</p>
<p> $(window).on('load resize', function(){
var ul = $('#header .gnb > ul > li').eq(0).find('ul').innerHeight();
var headerH = $('#header').innerHeight();
$('#header .gnb > ul').hover(function(){
$('#header').addClass('on');
$('.gnb_bg').height(ul + headerH)
$('#header .gnb > ul > li').children().next().stop().slideDown(700)
}, function(){
$('#header').removeClass('on');
$('.gnb_bg').height(0)
$('#header .gnb > ul > li').children().next().stop().slideUp()
})
})
$('.m_btn .icon').on('click', function(){
$(this).toggleClass('on');
$('.all_gnb').toggleClass('on')
$('.all_gnb').stop().fadeToggle();
if(!$('.all_gnb').hasClass('on')){
$('#header .all_gnb .right > ul > li > a').next().stop().slideUp();
}
})</p>
<p>
$('#header .all_gnb .right > ul > li > a').on('click', function(e){
if($(this).next().length !== 0){
e.preventDefault();
$(this).parent().toggleClass('on');
$('#header .all_gnb .right > ul > li > a').not(this).parent().removeClass('on');
$('#header .all_gnb .right > ul > li > a').next().stop().slideUp();
$(this).next().stop().slideToggle();
}
})</p>
<p>
메뉴를 클릭하면 바로 아래 하위메뉴가 뿌려지는 부분인데요
하위메뉴가 없을 때 대메뉴만 클릭해도 바로 이동되게 하고 싶어요~
지금은 하위가 있어야만 이동이 되구요
도와주세요~~~디자이너에요~~
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
플라이
Expert
2년 전
if구분을 체크해서 count($row['sub'])>0 서브메뉴의 존재여부를 체크해서 대메뉴에 링크를 적용해서 처리되도록 커스텀해야 하는데 해당 부분을 보시고 어려우시다면 개발자에 의뢰하시는게 효율적이실듯 보입니다.
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
2년 전
$('#header .all_gnb .right > ul > li > a').on('click', function(e){
if($(this).next().length !== 0){
e.preventDefault();
$(this).parent().toggleClass('on');
$('#header .all_gnb .right > ul > li > a').not(this).parent().removeClass('on');
$('#header .all_gnb .right > ul > li > a').next().stop().slideUp();
$(this).next().stop().slideToggle();
}
})
로그인 후 평가할 수 있습니다
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인