1

onmousedown イベントを使用してリンクをクリックすると、リンクをダブルクリックして切り替える必要があります。なぜそうなのか理解できません。

function toggleInteractContainers(x) {
//the 'x' variable represents the add friend/message container value
        if($('#'+x).is(":hidden")) {
        //if the container is hidden then we will slide it down and show it
            $('#'+x).slideToggle(400);

        } else {
            //if its not being hidden then we will hide it
            $('#'+x).hide();
        }
        //this just means we have to hide all the containers
        $('.interactContainers').hide();
}

このdivから呼び出しています

<div class ="interactionLinksDiv">
           <a href="#" onclick="return false" onmousedown="toggleInteractContainers('add_friend');">Add Contact</a>
</div>          
<div class ="interactContainers" id ="add_friend">
  <div align ="right"><a href="#" onclick= "return false" onmousedown = "toggleInteractContainers('add_friend')">cancel</a></div>
                Add as a contact? &nbsp;
  <a href ="#" onclick="return false" onmousedown="javascript:addAsFriend(); ">Yes</a>  
</div>

イライラするエラーは発生しません。このようなことが起こった理由と、再発を防ぐためにできることを教えていただければ幸いです。途中のプログラミングのヒントも素晴らしいでしょう。

4

2 に答える 2

0

動作デモマイナーな変更が行われました: http://jsfiddle.net/FGqE7/

何か見逃した場合はお知らせください!

それが原因に適合することを願っています:)

コード

function toggleInteractContainers(x) {
    //the 'x' variable represents the add friend/message container value
    if (!$('#' + x).is(":visible")) {
        //if the container is hidden then we will slide it down and show it
        $('#' + x).slideDown(400);

    } else {
        //if its not being hidden then we will hide it
        $('#' + x).hide();
    }
    //this just means we have to hide all the containers
   // $('.interactContainers').hide();
}​
于 2012-10-21T03:23:29.543 に答える