Javascript ボタンのクリック + 表示
-
21-08-2019 - |
質問
大きな赤いボタンがあり、JavaScript を使用して次のことを実行しようとしています。-
- OnMouseDown ボタンが押されたように見えるように画像を変更します
- OnMouseUp は最初の画像に戻り、隠された div を表示します
onMouse Down および onMouseUp の画像変更部分を機能させることができます。
OnClick を使用して非表示の div を取得して表示することもできます
問題は、すべてを連携させることができないことです。
どうすればいいでしょうか?
ところで、当然のことだと思いますが、私は JavaScript についてはかなり初心者なので、ご協力に感謝します
解決
あなたはイベントに複数のスクリプト文を区切るためにセミコロンを使用することができます:
<img src="..." alt="..."
onmousedown="depressed();"
onmouseup="undepressed(); revealDiv();" />
また、私はほとんどのブラウザでのonclickイベントをサポートして信じています:
<img src="..." alt="..."
onmousedown="depressed();"
onmouseup="undepressed();"
onclick="revealDiv();" />
あなたは既に別途3部のそれぞれを考え出したと言ったので、私はちょうど書いた機能を使用して、ステップごとに独自のコードに置き換えることができますことを呼び出します。
他のヒント
あなたのコードを見ることなく、それを言うのは難しいのですが、私は行方不明容疑者trueを返します; ' onclickまたはonMouseUpのイベントハンドラのいずれかの終わりの声明ます。
html要素のタグに直接属性表記を使って要素にイベントを添付することをお勧めしませんです。
コントローラ(アクションが起こっ)の
からビュー(レンダリングされたHTMLである)を区切るためにのはるかに良いやり方でありますイベントをアタッチするための最良の方法は、そのようなようなものです。
<img id="abut" />
<script>
var thebutton = document.getElementById('abut'); //Retrieve the button from the page
thebutton.onmousedown = depressed; //depressed is a function that you declare earlier on...here, you are just passing a reference to it
thebutton.onmouseup = function () {
undepressed();
revealDiv(); //Invoke the two functions when the 'onmouseup' is triggered'
};
</script>
所属していません StackOverflow