2017-03-01 10 views
0

Safariを全画面表示モードで使用する場合、コンテキストメニューを無効にするか上書きできません(右クリック/ ctrl +クリック)。コンテキストメニューを無効/上書きできませんSafari全画面モード

通常、1または無効も、oncontextmenuハンドラ使用してオーバーライドすることができますない時はフルスクリーンモードでのSafariなど、すべてのブラウザのために上記の作品を

videoEl.oncontextmenu = (e) => { 
e.preventDefault(); // or return false; 
} 

を。ただし、ビデオがSafariフルスクリーンモードのときは、コードは起動しません。再現するには、単にフルスクリーンに行き、ctrl +クリックします。デフォルトのコンテキストメニューが表示されます。

また、クリック/キーボードイベントを捕まえても、フルスクリーンモードでは起動しません。

しかし、Safariのフルスクリーンモードでは、Youtubeのような他のプレイヤーはコンテキストメニューを無効にしたり無効にしたりすることができます。

アイデア?これは、あまりにも動作するかもしれ

videoEl.oncontextmenu = 
    function() { 
     return false; 
    }; 

また
video::-webkit-media-controls { 
    display:none !important; 
} 

、本当にとして、コンテキストメニューを無効にすることをお勧めしていないことを、単に優しいリマインダーを

はあなたに追加

+0

'e.preventDefault()' *と* 'return false'の両方を試しましたか? – gyre

答えて

0

既存の返信(ありがとう)が問題を解決しなかったため、ここで回答します。

"controls"属性はプレーヤーから削除する必要があります。残念なことに、これはすべてのプレーヤーコントロールを再実装する必要もあります。

Safariのフルスクリーンモードで右クリックメニューを防止し、必要に応じて独自のカスタムメニューを提供することができます。

0

てみてくださいありがとうございましたあなたのソースコードをまったく保護しておらず、迷惑なユーザーエクスペリエンスにつながる可能性があります。

とにかく、これが役立つことを願っています。

+0

*あなたのソースコードはまったく*保護しません。 。 。単純な変更を使用して、非技術的ユーザーの大部分があなたのコンテンツに不正アクセスするのを防ぐことができれば、それは価値があります。 – gyre

関連する問題