0

ここでのシナリオは、ツールチップを作成しました。すべてのdivタグに異なる id を指定しました。ID に基づいて、異なるツール ヒントを生成する必要if elsedivあります。コードは他に条件がありません:このリンクでライブの例を確認できます.. みんな私を助けてください.. :)

4

5 に答える 5

0

それは間違っている:

if(document.getElementById("ips"))

id を持つ要素が常に存在するため、これは常に true になりますips。あなたが望むのは、それを実際のIDと比較することです:

var this_id = $(this).attr("id");
if(id === "ips")
于 2013-09-11T09:52:22.053 に答える
0

http://jsfiddle.net/6CBMw/13/

$(document).ready(function() {

    var changeTooltipPosition = function(event) {
      var tooltipX = event.pageX - 8;
      var tooltipY = event.pageY + 8;
      $('div.tooltip').css({top: tooltipY, left: tooltipX});
    };

    var showTooltip = function(event) {
      console.log(event.target);  
      $('div.tooltip').remove();
      if(event.target == document.getElementById('ips'))
      {
          $('<div class="tooltip">situated on or affecting the same side</div>').appendTo('body');
      } else if(event.target == document.getElementById('tyu')){
          $('<div class="tooltip">hi i m tooltip</div>').appendTo('body');
      } else {
          $('<div class="tooltip">hi i m LAST LAST tooltip</div>').appendTo('body');
      }
      changeTooltipPosition(event);
    };

    var hideTooltip = function() {
       $('div.tooltip').remove();
    };

    $('div#ips, div#tyu').bind({
       mousemove : changeTooltipPosition,
       mouseenter : showTooltip,
       mouseleave: hideTooltip
    });

});
于 2013-09-11T10:00:20.393 に答える
0

document.getElementById("ips")常に Html div オブジェクトを返し、そのブール値は true になります。値を比較します。

イベントからターゲットの属性「id」を取得し、div id と比較する必要があります。

 if(event.target.id=="ips")
  {

  $('<div class="tooltip">situated on or affecting the same side</div>')
        .appendTo('body');
  }
  else if(event.target.id=="tyu")
  {

  $('<div class="tooltip">hi i m tooltip</div>').appendTo('body');
  }else....
于 2013-09-11T09:51:06.077 に答える
0

使用する

     if (event.target.id == "ips") {/*Code*/} 
     else if (event.target.id == "tyu") {/*Code*/} 
     else {/*Code*/}

それ以外のdocument.getElementById

デモ

于 2013-09-11T09:53:18.103 に答える
0

これを試してください: http://jsfiddle.net/6CBMw/8/

    var linkId = $(this).attr('id');
    switch(linkId){
        case 'ips':
            $('<div class="tooltip">situated on or affecting the same side</div>').appendTo('body');
            break;
        case 'tyu':
             $('<div class="tooltip">hi i m tooltip</div>').appendTo('body');
            break;
        default:
             $('<div class="tooltip">hi i m LAST LAST tooltip</div>').appendTo('body');
            break;
    }
于 2013-09-11T09:55:29.873 に答える