- ベストアンサー
このサイトの中の文字をコピーできないのですが
http://4ji.za-yu.com/050/ このサイトの中の文字をコピーできないのですが これはロックがかけられているのでしょうか? であればどのコードですか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>コピペできない とりあえずリンク先ページを [ctrl+U] でHTMLソースコードをテキストとして表示させて見てください。ページ内38行目の部分に <body oncontextmenu="return false;" oncopy="return false;"> ~と記述されているかと思いますが。この oncopy="return false;" の部分がコピペ禁止を行っている部分です。 P.S. 技術的な解説をしますと、これは「JavaScriptのイベントハンドラ」を利用した即時発動型のプログラムですね。必ずしも <BODY> タグ内部に直書きしなくても良いのですが、Javascriptの知識が無いド素人でも見様見真似でサンプルコピペすれば、すぐに何某かの結果を得られるのでこの様なカーゴカルト式サイトがweb上には無数に溢れています。 この場合は oncontextmenu、oncopy~ と記述された部分がそうで。他にも onmouse とか onclick などが有り、それぞれに対応するイベントが違います。"イベント" と言うのはプログラム用語で「何かアクションが起きた(変化した)」と言う意味で、例えば「マウスがクリックされた時」とか「コピペのコマンドが実行された時」など実に様々なイベントが存在し。Javascriptを始めとしたプログラム言語のほぼ全てがそれらイベントの発生を自動的に検知して信号をプログラム側に送ります。 イベントハンドラとはそれらのイベントを感知したら自動的に指定した処理を即時実行する様に事前に仕込んで置く手法で、web上でも最も良く使われるwebページの動的処理を行う一般的な手法の1つです。 リンク先ページの例で解説しますと、 ・oncontextmenu ... 右クリックが行われた ・oncopy="return ... コピペ動作が行われた(ctrl+C) ~以上の様になっており、どちらも上記のイベントが発生した瞬間に自動的に return false; が実行される仕組みとなっています。厳密には違いますが、まあJavascriptの場合は "return false" で「何もしない(イベントを強制的に無視)」とほぼ同じ事になるので。つまりこの2つのイベントハンドラを記述して置く事により、「ページ内コピペと右クリック禁止」と言う昔懐かしい昭和のホームページ仕様を実現しています。 まあこういう勘違いサイトは未だ多いですが、文句を言っても仕様がないので。素直に自由にコピペ&右クリック可能な他の代替サイトを探すか、[ctrl+U] でHTMLソースコードをテキスト表示させてそこから直にコピペしましょう。
その他の回答 (1)
- celtis
- ベストアンサー率70% (2332/3291)
Javascriptで右クリックを無効にしているので、ブラウザの設定でJavascript自体を無効にすればコピーできるようになりますよ。 ブラウザがGoogle ChromeやFirefoxなら簡単に操作できるので、ぜひ試してみてください。 https://keikenchi.com/right-click-able
お礼
回答頂きありがとうございました。
お礼
回答頂きありがとうございました。