1

更新、問題は解決しました。問題は、HREF を変更しようとした後に呼び出していた関数にありました。これは、本質的に元に戻すものでした。


jQuery を使用して、URL に含まれるハッシュに基づいて一連のリンクの HREF 属性を変更しようとしていますが、属性は単に変更されておらず、空の文字列に変更されています。

ここで私が間違っていることを誰かが見ることができますか? なぜ機能しないのですか?

http://fwy.pagodabox.com/categories/sculptures/#grid

問題のリンクは

すべての展覧会 インスタレーション オブジェクト 版画 彫刻

セカンダリ ナビで

function navHash($navlinks, hashtxt) {

        // loop through specified links
        $navlinks.each(function(){
            var $me = $j(this),
                myhref,
                index;

            // Does this link have an href… if not move on          
            if( typeof $me.attr('href') === "undefined" )
                return false;

            myhref = $me.attr('href');
        index = myhref.indexOf('#');

        // if my href doesn't have the specified hash text, add it, else remove it
        if(myhref.indexOf(hashtxt) === -1) {
            $me.attr("href", hashtxt);
        } else {
            $me.attr("href", myhref.substring(0, index));
        }   
    });
}




   $j(document).ready(function($){

        var $navlinks = $j('.sub-nav li:not(.views) a');

        if(window.location.hash == '#grid') {
            navHash($navlinks, '#grid');
            $('.views .ic-grid').click();
        }
// so on...

ありがとうございました!!!

4

1 に答える 1

1

ここに戻るfalseと、ループが停止します。

if(typeof $me.attr('href') === "undefined")
   return false;

戻っtrueてループを続けます。

于 2012-08-21T15:04:46.293 に答える