ホームページ >ウェブフロントエンド >htmlチュートリアル >この例に従っても、画像はマウスの動きに追従できません。 Ask_html/css_WEB-ITnose

この例に従っても、画像はマウスの動きに追従できません。 Ask_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-21 09:42:331107ブラウズ

<head>    <title></title>    <script type="text/javascript">        document.onmousemove = function () {            var x = window.event.clientX;            var y = window.event.clientY;            var div1 = document.getElementById("div1");            if (!div1) {                return;            }            div1.style.left = x;            div1.style.top = y;        };    </script></head><body><div id="div1" style="position:absolute"><img src="img\fly.png" /><br />我是图片。</div></body>

目的は、画像がマウスの動きに追従することを認識することです。実行時に、マウスがわずかに左上に移動してから停止することがあります。どこに問題があるのか​​をお聞きしたいのですが。 ?ありがとうございます


ディスカッション(解決策)への返信

助けてください! !ありがとうございます

コードは chrome 上で確立されていますが、Firefox では windows.event が見つかりませんと表示されます
修正すれば、Firefox や IE6 でも使用できます。

<head>    <title></title>	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    <script type="text/javascript">        document.onmousemove = function (event) {			event= event|| window.event            var x = event.clientX;            var y = event.clientY;            var div1 = document.getElementById("div1");            if (!div1) {                return;            }            div1.style.left = x;            div1.style.top = y;        };    </script></head><body><div id="div1" style="position:absolute"><img src="img\fly.png" /><br />我是图片。</div> </body>

コードは chrome では確立されていますが、Firefox では windows.event が見つかりません
これを修正すると、Firefox や IE6 でも使用できるようになります。

JavaScript コード?12345678910111213141516171819202122232493f0f5c25f18dab9d176bd4f6de5d30e b2386ffb911b14667cb8f0f91ea547a76e916e0f7d1e588d4f442bf645aedb2f をクリックすると、移動できず、効果が得られません。 !

mootools 互換性コード、試してみてください

this.client = {				x: (event.pageX != null) ? event.pageX - win.pageXOffset : event.clientX,				y: (event.pageY != null) ? event.pageY - win.pageYOffset : event.clientY			};

さて、win=window;

mootools 互換性コード、試してみてください

JavaScript code?1234this.client = { ) ?event.pageX - win.pageXOffset :even.clientX, y : (event.pageY != null) ? …
こんにちは、このコードがどこで使用されているかわかりません。アドバイスをお願いします。ありがとう! !

IE9 がクラッシュしてしまい、再インストールするのが面倒なので試してみてください。

93f0f5c25f18dab9d176bd4f6de5d30e
b2386ffb911b14667cb8f0f91ea547a76e916e0f7d1e588d4f442bf645aedb2f
97f2b6ae5f4f65bc7d15c6c9b9e8be8c "text/javascript">
document.onmousemove = 関数 (イベント) {
イベント = window.event
var x = (event.pageX != null) ? ;
var y = (event.pageY != null) ?event.pageY - window.clientY;
var div1 = document.getElementById("div1") {
}
div1 .style.left = x;
div1.style.top = y;
9c3bca370b5104690d9ef395f2c5f8d1
47059a2ce046168d174afc92450c0fd4 ;
ea6c1c6668ff70c8a24b76320eaa3ee0df250b2156c434f3390392d09b1c9563 私は写真です。
16b28748ea4df4d9c2150843fecfba68

36cc49f0c466276486e50c850b7e4956

実際、これは解決方法ではありません。理由はわかりませんが、IE9 が互換モードをオンにすると問題は解決します。あなたのコードを使用しても同じ問題が発生します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。