下のスクリプトの最後の () はどうして必要なのでしょうか? ないとうまく機能しないので必要なことは間違いないのですが……
javascript:(
function()
{
var newCSS, styles='
* { background: white ! important; color: black !important } ';
if(document.createStyleSheet)
{ document.createStyleSheet("javascript:'"+styles+"'"); }
else
{ newCSS=document.createElement('link');
newCSS.rel='stylesheet';
newCSS.href='data:text/css,'+escape(styles);
document.documentElement.childNodes[0].appendChild(newCSS);
}
})();
No.1ベストアンサー
- 回答日時:
最後の () は無名の functionを呼び出すための () です。
無名の function とは,書かれている冒頭の
javascript:(
function()
{ …
この↑ function です。
この function は,関数を定義しているだけで,実行命令を受けていません。
「このfunctionを,実行しろ。」と呼び出しているのが最後の () です。
HTML に書いた場合は,
『OnClick="function名"』や『A href="javascript: function名">』に当たる部分が,最後の () です。
わかりやすくするために,以下のようにこの function に aaa という名前を付けてみます。
javascript:(function aaa(){var newCSS, styles='* { background: white ! important; color: black !important } '; if(document.createStyleSheet) { document.createStyleSheet("javascript:'"+styles+"'"); } else { newCSS=document.createElement('link'); newCSS.rel='stylesheet'; newCSS.href='data:text/css,'+escape(styles); document.documentElement.childNodes[0].appendChild(newCSS); }});aaa();
このように↑書いても,BookMarkletは動作します。
function名は付けても良いですが,字数を増やすだけです(IE6の制限508文字?)。
だから付けないのが普通です。
またHTML文書内のJavaScriptとの干渉を防ぐ意味もあるかもしれません。
下記参考URLは,他の点でも参考になると思います。
「ブックマークレットを作成する際のポイント」↓
参考URL:http://www.teria.com/~koseki/memo/bookmarklets/t …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS html/cssで要素が出てこなくて困ってます 1 2022/12/31 16:59
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript スマフォではボタンを表示させたくない 2 2023/01/20 14:26
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS html cssのmargin 5 2022/12/03 11:04
- その他(プログラミング・Web制作) Latexに関する質問です。 3 2023/05/23 10:18
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DOM要素を削除しても、イベント...
-
Latexに関する質問です。
-
VBAでIEのボタンを押してメッセ...
-
JavaScript window.openで開く...
-
javascriptの基本的なことだと...
-
Null またはオブジェクトではあ...
-
このjavascriptのif文、条件式...
-
LaTeX:数式を等号揃えにする方法
-
getパラメータ
-
responseTextについて
-
codejump 模写コーディングgall...
-
FireFoxのjavascriptで自動でキ...
-
文字を一文字ずつ表示
-
excle VBA とweb上の検索を利用...
-
同じIDで定義した要素の配列を...
-
idを使わずにonclickで自身の要...
-
Boolean型配列中のTrueの有無を...
-
jspからjavascriptの変数引継ぎ
-
関数でy=g(x)のgとは何の略です...
-
C#OpenCv V4にのエラーに関する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaScript window.openで開く...
-
このjavascriptのif文、条件式...
-
FireFoxのjavascriptで自動でキ...
-
DOM要素を削除しても、イベント...
-
javascriptの基本的なことだと...
-
文字を一文字ずつ表示
-
showModalDialogで開いた画面を...
-
Null またはオブジェクトではあ...
-
Javascriptのhtml出力についてa...
-
codejump 模写コーディングgall...
-
LaTeX:数式を等号揃えにする方法
-
javascriptのdocument.allにつ...
-
excle VBA とweb上の検索を利用...
-
Latexに関する質問です。
-
乗換案内 VBAで操作したい
-
JavaScriptのdocument.all("変...
-
Javascriptで定期的にF5を押す...
-
選択によってsubmitボタンの色...
-
スマホでフォームにフォーカス...
-
compatModeとは?
おすすめ情報