1

最近、次のプレゼンテーションを作成するために、シャワー HTML5+CSS3 プレゼンテーション テンプレートに取り組んでいます。シャワーは、スライドの概要で現在のスライドを簡単に識別できるCSS:target疑似クラスを使用します。

URL のハッシュを通じてどのように機能するかは理解していますが、すべての要素から CSS をまったく:targetクリアすることはできません。:target

だから私の質問は: 要素が編集された後、JavaScript を使用してすべてをクリアし、標準に戻すに:targetはどうすればよいでしょうか? :targetHistory API の使用が機能していないようです。

4

2 に答える 2

1

以前に次の 2 つのステートメントを試しましたが、うまくいきませんでした (少なくとも Firefox では)。

history.pushState({}, 'null', window.location.pathname);
window.location.href.substr(0, window.location.href.indexOf('#'));

トリックは、代わりにこれを使用することです:

window.location.hash = '';

:targetこの問題は、JavaScript を使用して選択をクリアしようとした場合にのみ発生します。ハッシュが存在しないか空のアンカータグは機能します: http://jsfiddle.net/SMbsb/3/

于 2012-10-16T02:07:14.423 に答える
0

JavaScript を使用せずにリンクでハッシュ ターゲットをクリアするには、別の<a>タグをhref="#".

簡単な例: http://jsfiddle.net/Y5XB7/
上部の黒い四角を:targetクリックしてアクティブにし、下部の黒い四角をクリックしてクリアします。

<a href="#" ...> ... </a>
于 2012-10-16T02:19:40.257 に答える