0

我确定我接近解决方案,<a>当我使用滑动箭头导航时,子菜单导航应该有一个选定的类。

目前仅在单击时添加类。我不知道该怎么办。我把下面的代码放在一起,但不起作用。

http://jsfiddle.net/L7R9D/14/

window.onhashchange = locationHashChanged;
    function locationHashChanged() {

        // MENU1
        if (location.hash === "#/slide1") {
             console.log('menu slide1')
            $('#menu2').addClass('selected');
        } else {
            $('#menu2').removeClass('selected');
        }
        // MENU2
        if (location.hash === "#/slide2") {
            console.log('menu slide2')
            $('#menu2').addClass('selected');
        } else {
            $('#menu2').removeClass('selected');
        }
        // MENU3
        if (location.hash === "#/slide3") {
            console.log('menu slide3')
            $('#menu3').addClass('selected');
        } else {
            $('#menu3').removeClass('selected');
        }

    };

    locationHashChanged();
4

2 回答 2

0

设法自己修复它。下面是解决方案http://jsfiddle.net/L7R9D/18/

<ul class="menu" id="menu">
          <li data-index="0"><a href="#/slide1" class="see-all">go to first slide</a></li>
          <li data-index="1"><a href="#/slide2" class="see-all" >go to second slide</a></li >
          <li data-index="2"><a href="#/slide3" class="see-all">go to third slide</a></li>
</ul>

查询

 var menu_items = document.body.querySelectorAll('#menu li');
    for (var i = 0, len = menu_items.length; i < len; i++) {
        if (menu_items[i].getAttribute('data-index') && !(menu_items[i].getAttribute('data-index').indexOf(event.indexh) == -1)) {
            menu_items[i].setAttribute('style', 'background-color:rgba(0,0,0,1);border-radius:5px');
        } else {
            menu_items[i].setAttribute('style', '');
        }
    } 
于 2013-10-29T11:43:19.410 回答
0

您需要将navigate-rightnavigate-rightDIV更改为<a>具有适当哈希值的标签。

于 2013-10-29T11:30:31.737 回答