3

1 回のクリックで複数の Web ページを開く簡単なブックマークレットを作成しました。

javascript:(function(){window.open("http://www.w3schools.com");window.open("http://www.google.com");window.open("http://www.yahoo.com");})();

ブラウザを開いてすぐにクリックしたくないのですが、ページがウィンドウに読み込まれていない限り、ブックマークレットは機能しません。速度を上げるために、ブラウザのホームページを「空白」に設定することを好みます。ページをロードせずにこのブックマークレットを実行する方法はありますか?

また、何かが実際にロードされている場合、ウィンドウにロードされているページをブックマークレットに置き換えたいと思います。現在、3 つの新しいタブが開きます。最初の window.open の「name」属性に「_self」と「_parent」の値を試してみましたが、うまくいかないようです。正しくフォーマットできていない可能性があります。

どんな助けでも大歓迎です!ありがとう!

4

2 に答える 2

4

どのページでもブックマークレットを開くことはできません。

代わりに、ホームページを次のように設定してみてくださいdata:text/html,Welcome!(はい、それは有効な URL です)。

同じタブでページを開くには、次のように入力します。

location.href='http://www.w3schools.com'
于 2012-08-30T21:46:09.500 に答える
2

私は同じ問題を抱えていましたが、インターネットから、about:config に移動してbrowser.newtab.urlを検索し、デフォルトのabout:newtabではなくabout:blankに変更すると、javascript ブックマークレットが機能するはずであることを知りました (ちょうど試してみましたが、うまくいきました!)。これは、data:text/html メッセージを実行するよりもクリーンなはずです (いずれにせよ、ホームページを設定しても、新しいタブごとに機能するわけではなく、新しいウィンドウに対して 1 回だけ機能します)。

于 2013-01-17T00:20:57.730 に答える