2016-04-16 3 views
1

グラフィックスコンテンツクラス内で動的にsvg要素(ポイント)を作成していますが、jqueryを使用してポイント要素にアクセスしようとしましたが、どんなゾル?SVG要素を挿入し、jqueryを使用してアクセスします

/* code for creating svg element */ 
$(document).ready(function(){ 
    var x = 0, 
    $y1 = 0; 
    $con = $(".graphic-content"); 

    var $svg = $(svg("svg")).attr({ 
    "width": "946", "height": "280" 
    }).appendTo($con); 

    /* create a point */ 
     $(function() { 
     $(svg("circle")).attr({ 
     "cx": x, "cy": $y1,"r":"3","class":"point" 
      }).appendTo($svg); 
    }); 
    /* hover effect*/ 
$("circle").hover(function(){ 
    $(this).css("cursor", "pointer"); 
    alert("Hello!"); 
}); 
}); 
function svg(elem) { 
     return document.createElementNS("http://www.w3.org/2000/svg", elem); 
    } 
+0

を使用してcursor:pointを設定? – guest271314

+0

申し訳ありません! xと$ y1は私のソースコードで宣言した円の要素の座標です。 – flamelite

答えて

1

x$y1が定義されたように見えませんか? svg、イベント委任に添付されたmouseentermouseleaveイベントを使用してみてください。削除する; alert()呼び出し; 'X'と `$のy1`が定義されてい.toggleClass()

/* code for creating svg element */ 
 
$(document).ready(function() { 
 
    var x = 0, 
 
    $y1 = 0; 
 
    $con = $(".graphic-content"); 
 

 
    var $svg = $(svg("svg")).attr({ 
 
    "width": "946", 
 
    "height": "280" 
 
    }).appendTo($con); 
 

 
    /* create a point */ 
 
    $(function() { 
 
    $(svg("circle")).attr({ 
 
     "cx": x, 
 
     "cy": $y1, 
 
     "r": "3", 
 
     "class": "point" 
 
    }).appendTo($svg); 
 
    }); 
 
    /* hover effect*/ 
 
    $("svg").on("mouseenter", "circle", function(e) { 
 
    console.log(e); 
 
    $("body").toggleClass("hovered"); 
 
    // alert("Hello!"); 
 
    }).on("mouseleave", "circle", function(e) { 
 
    console.log(e); 
 
    $("body").toggleClass("hovered") 
 
    }) 
 
}); 
 

 
function svg(elem) { 
 
    return document.createElementNS("http://www.w3.org/2000/svg", elem); 
 
}
.hovered { 
 
    cursor: pointer; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"> 
 
</script> 
 
<div class="graphic-content"></div>

+0

は依然として機能しません。 – flamelite

+0

と私が使用したように円の要素に直接アクセスする際の問題は何ですか? – flamelite

+0

「まだ動作していません」と記述できますか? – guest271314

関連する問題