サードパーティの JavaScript を信用できない場合 (私はあなたを責めませんが、それは恐ろしいことです!)、最善の策はiframe
、これらのソーシャル ネットワークが提供する実装を使用することです。たとえば、次のフレームをサイトに追加することで、Facebook の「いいね」ボタンを含めることができます。
<iframe src="//www.facebook.com/plugins/like.php?href=[PAGE_URL_GOES_HERE]&send=false&layout=button_count&width=450&show_faces=true&font&colorscheme=light&action=like&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:21px;" allowTransparency="true"></iframe>
https://dev.twitter.com/docs/tweet-button#using-an-iframeには、Twitter の同様の設定に関する詳細があります。
コードを にカプセル化するiframe
と、フレームのコンテンツに対してある程度の保護が得られます。これは、親に到達してデータを取得したり、コードを操作したりすることができないためです。
iframe
(巧妙な名前の)sandbox
属性を介してサンドボックス化することにより、保護レベルを上げることができます。例えば:
<iframe sandbox="allow-script allow-same-origin" src="..."></iframe>
ページを にロードしiframe
、オリジンにアクセスしてスクリプトを実行できるようにします (ただし、親のオリジンにはアクセスしません)。ただし、最上位のドキュメントをナビゲートしたり、プラグインをロードしたりすることはできません。サンドボックスは、Chrome、Safari、Firefox 18+、および IE9 (おそらく 10.) でサポートされています。