由々識の気まぐれ日記

JavaScriptプログラマ「由々識」が時々書くするブログ。 内容はJavaScript全般、Sleipnir関係。

「リンクを解除」スクリプトを公開

Sleipnir 専用スクリプトの新作を公開しました。
実行すると、ページ内の全てのリンクを解除し、
もう一度実行すると元に戻ります。
用途としては、任意の文字列をコピーする際に使います。
リンクが邪魔で任意の文字列がコピーできない時に便利です。
なお、詳細は付属テキストを参照してください。

Yuyu's Digital Lab. - ダウンロード - Sleipnir用スクリプト「リンクを解除」のダウンロードページ


さて、それではこのスクリプトはどのようにしてリンクを解除しているのでしょうか。

最初、<A>タグのタグ名を SPAN に置換する方法を試みたのですが、
実行した瞬間にページのレイアウトが崩れまくってしまいました。
どうやらタグ名を変えたことによって、<A>タグに効いていたスタイルシートが効かなくなってしまったようです。
なのでこの方法はあえなく没ということになりました。
ではどうしたら良いのか?
色々試してみたところ、どうやら<A>タグ内に href 属性が存在しないとリンクにならないことがわかりました。
というわけで早速修正です。
<A>タグの href 属性の属性名を無意味な文字列に置換してみました。

<A href="index.html">アンカーテキスト</A>
     ↓
<A linkcancel="index.html">アンカーテキスト</A>

スクリプトを実行したところ、ページのレイアウトを維持したままリンクの解除ができました。
めでたしめでたし。

と、ここまで読んで気がついた人もいるかと思います。

「『ソースを正規表現で置換』を使えばこのスクリプトいらなくね?」

はい、そのとおりです。
『ソースを正規表現で置換』を使ってもできます。
でも、この『リンクを解除』を使う利点が何も無いかといえばそうではありません。
『ソースを正規表現で置換』を使った場合、「リンク解除」と「元に戻す」の2種類別々に設定しなければなりませんが、
『リンクを解除』を使えば同一アクションでトグル(ON/OFF 切り替えられる)できます。

というわけでまあ、好きな方を使っていただけたらと思います。

入念に動作テストしてから公開しておりますが、不具合等ありましたら、コメント欄か 2ch のプラグインスレにどうぞ。

コメント

コメントの投稿

管理者にだけ表示を許可する

画像の文字を半角数字で下記ボックスに記入ください。
文字が読みにくい場合はブラウザの更新をすると新しい文字列が表示されます。

トラックバック

http://yuyushiki.dtiblog.com/tb.php/169-45c65efa

« 前のページ  | HOME |  次のページ »

Sleipnirスクリプトをお探しのかたはこちらへどうぞ。

Yuyu's Digital Lab.

プロフィール

由々識

作者:由々識

JavaScriptプログラマの由々識です。
主にSleipnirスクリプトを書いています。

RSS 1.0

カレンダー

05 | 2017-06 | 07
S M T W T F S
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

アーカイブ

カテゴリー

最新投稿

最新コメント

トラックバック

ツール

あわせて読みたい
この日記のはてなブックマーク数

DTIブログポータルへ
このブログを通報
Report Abuse
利用規約