【问题标题】:Jquery address plug and my existing scriptjquery地址插件和我现有的脚本
【发布时间】:2011-10-21 20:01:07
【问题描述】:

我正在尝试将地址插件添加到我现有的脚本中,但我遇到了问题。

这是我的 jquery 和 html。 (本项目中包含的其他库不需要冲突)

jQuery.noConflict();
jQuery(document).ready(function($) {

$('.dk_movie_list .grid').hide().css('visibility','visible').address();

$('.dk_movie_list .grids .all').show();

$('.dk_movie_list .grids .all').jScrollPane({
    verticalDragMinHeight: 205,
    verticalDragMaxHeight: 205
});

// Display all on initial load
$('.dk_movie_list .grids .all').css({position:'absolute',display:'block'});

$('.dk_movie_list ul.nav li').click(function() {
    $(this).addClass('btnSelect').siblings().removeClass('btnSelect');
    i = $(this).index();
    $('.dk_movie_list .grid:visible').fadeOut(400, function() {

        $('.dk_movie_list .grid:eq(' + i + ')').fadeIn(400).address();

        $('.dk_movie_list .grid').jScrollPane({
        verticalDragMinHeight: 205,
        verticalDragMaxHeight: 205
        });

    });

    $('.dk_movie_list .grid').jScrollPane({
        verticalDragMinHeight: 205,
        verticalDragMaxHeight: 205
    });

  });
});


 <ul class="nav">
                        <li class="all"><a class="btnSelect" rel="address:all">All</a></li>
                        <li><a rel="address:Action-Adventure">Action-Adventure</a></li>
                        <li><a rel="address:Comedy">Comedy</a></li>
                        <li><a rel="address:Drama">Drama</a></li>
                        <li><a rel="address:Documentary">Documentary</a></li>
                        <li><a rel="address:Foreign">Foreign Films</a></li>
                        <li><a rel="address:Horror">Horror</a></li>
                        <li><a rel="address:Independent">Independent</a></li>
                        <li><a rel="address:Family">Family</a></li>
                        <li><a rel="address:Music">Music</a></li>
                        <li><a rel="address:Romance">Romance</a></li>
                        <li><a rel="address:SciFi-Fantasy">SciFi-Fantasy</a></li>
                        <li><a rel="address:Suspense-Thriller">Suspense-Thriller</a></li>
                    </ul>

只是为了确认一下,我在 script.js 之后包含了 jquery.address-1.4.min.js。我也有 jScrollPane 库。

目前,在我单击每个锚点后,路径会发生变化,我也可以返回,但如果我复制过去 localhost:8888/#/Comedy,它只会默认为第一个菜单项。

感谢您的建议或提示。

【问题讨论】:

  • 应该怎么做呢?您需要在页面重新加载时检查主题标签,如果有主题标签,请使用该项目激活功能。见brightcherry.co.uk/scribbles/2011/09/02/…
  • 对不起,我不知道如何添加那一点js。您能否提供更多详细信息。再次感谢!

标签: jquery html jquery-address


【解决方案1】:

页面 ID(主题标签)并不表示点击。

因此,如果您输入 localhost:8888/#Comedy 或 localhost:8888 应该会有所不同。

但您可以做的是检查页面加载时的主题标签,然后执行脚本以点击威胁它。

所以

if(window.location.hash) {
 //set the value as a variable, and remove the #
 var hash_value = window.location.hash.replace('#', '');
 //i don't know your code so i can only simulate a click, you should instead do the real function
 $('a[rel$="'+hash_value+'"]').parent().click();
}

我假设你不想点击 LI 标签,而不是 A,因为那是你的 JS 的目标。

【讨论】:

    猜你喜欢
    • 2013-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 2010-11-24
    • 2011-01-19
    • 2011-04-13
    • 1970-01-01
    相关资源
    最近更新 更多