4

私のSharePointサイトは、リンク用にCSSで定義されたa:visitedスタイルを保持する必要があります。次のコードを追加しました。このコードは、各hrefに「&Source=/」を追加します。jQueryを介してhrefを変更することにより、ブラウザは元のhrefのみを「認識」し、a:visited一致するものがないため、スタイルをトリガーしないようです...

$("table[class='ms-listviewtable'] td[class='ms-vb2'] a")
    .removeAttr("onclick")
    .attr('href', function () {
        return $(this).attr('href') + '&Source=/';
    });
4

3 に答える 3

3

IE は:visited、動的に更新されるリンクのスタイルをサポートしていないようです。IE8 のみをテストしましたが、最新バージョンで動作しない場合は、IE 6/7 でも動作するとは思わない

IE は、訪問者がリンクをクリックして別のページに移動し、[戻る] ボタンをクリックして前のページに戻るという最も基本的なシナリオのみをサポートします。そうして初めて、リンクの:visitedスタイルが表示されます。

ただし、Firefox 3 では完全に動作します。hrefリンクの属性が JavaScript によって更新された場合でも、リンクは適切にスタイル設定されます。

さまざまなリンクや方法を試すことができるテスト ページを作成しました: http://jsbin.com/odoqo ( http://jsbin.com/odoqo/editで編集可能)

注:テスト ページは Firefox 3 と IE 8 でのみ使用しました。おそらく IE 6/7 では機能しなくなるでしょう。

于 2009-05-08T06:20:31.230 に答える
1

クエリ文字列パラメータを追加すると、ブラウザはそれを完全に異なるURLとして認識し、アクセスされていないURLとして認識します。ブラウザには、Sourceパラメータがリンクの宛先を変更しないことを知る方法がありません。

もう1つ注意すべき点は、スタイルがどれほど具体的かということです。「tablea」が「a:visited」を上書きすることがあるため、「tablea:visited」も必要です。

于 2009-05-08T00:43:00.153 に答える