0

私はここで本当の問題を抱えています。オブジェクトがクリックされたとき、およびマウスがオブジェクト上に移動したときにのみ呼び出される関数が必要です。理解を深めるための(構文が遅い)例を次に示します。

<div onMouseMove+onMouseDown="function()" ... ></div>

これを解決する方法を考えていました。onMouseDown関数の名前を変更する関数をトリガーする関数を作成しonMouseMove、「フィラー」または「代用」関数を使用するとどうなりますか? 説明させてください:

<div id="object" onMouseMove="substituteFiller()" onMouseDown="nameChanger()" ... ></div>
<script>
    function nameChanger(){
        document.getElementById("object").onMouseMove = "theRealFunction()"; 
    }
</script>
<script>
    function theRealFunction() ... 

オブジェクトの上にマウスを移動しても、関数が機能しないため、何も起こりsubstituteFiller()ません。しかし、マウスがオブジェクトをクリックすると、onMouseMove- 関数が正しいものになりtheRealFunction()theRealFunction()マウスが動くと呼び出されるようになりました。

theRealFunction()このようにして、オブジェクトがクリックされたときとマウスが移動したときにのみアクティブ化/呼び出しできました。しかし、うまくいきません。

明確にするために、呼び出されている関数の名前を変更するにはどうすればよいですか? オブジェクトをクリックしてマウスを動かしたときにのみ呼び出される関数を作成するにはどうすればよいですか?

よろしくお願いします。そうでない場合は、コメントしてください。

4

2 に答える 2

1

私のウェブページの一部です。チェックしてみてください。お役に立てますように..

<div id="Log_frm">
<fieldset id="fld_1">
    <!--<legend>Log In</legend>-->        
    <div id="log_l" onmouseover="dv_in();" onmouseout="dv_out();" style="background-color:#0C93D4;font-size: 15px;height: 30px;padding: 7px 32px 0px 32px;font-weight:bold; float: left;-webkit-border-top-left-radius: 5px;">
        <a  href="#" onclick="">Log In</a>
    </div>
    <div id="log_r" onmouseover="dv_out();" onmouseout="dv_in();"style="background-color: #0C93D4;font-size: 15px;font-weight:bold; float: right;height: 30px;padding: 7px 14px 0px 12px;-webkit-border-top-right-radius: 5px;">
        <a  href="#">Need Any Help</a>
    </div >   
    </fieldset>
</div>

<style>
#Log_frm {
    width: 250px;
    height: 60px;
    margin-top: 10px;
    position: absolute;
    font-size: 12px;
    float: right;
    right: 0px;
}

#Log_frm a {
    color: #fff;
    text-decoration: underline !important;
    left: auto;
    margin-right: auto;

}

<script type="text/javascript">
        function dv_in() {  
            log_l.style.backgroundColor="#06C"; 
            log_r.style.backgroundColor="#0C93D4"; 
        }
        function dv_out() {  
            log_l.style.backgroundColor="#0C93D4"; 
            log_r.style.backgroundColor="#06C";
        }


</script>

ごきげんよう..

于 2015-08-09T17:14:28.847 に答える