2016-05-06 9 views
0

私は<svg>を作成していますが、<svg>の中心にテキストを入れたいと思います。最初のボタンをクリックすると、svgにはテキストが表示されません。 2番目のボタン、テキストが表示されます。最初の1つは、私はsvgの位置を追加するだけです。テキストが表示されない理由はわかりません。svgの中心にテキストを配置

は、あなたがあなたの開口部svgタグの閉じ括弧>が欠落している

$(document).ready(function() { 
 
    $('#testbtm').click(function() { 
 
    var str = '<svg class="hexagon" class="ui-widget-content" style="position:absolute; left:200; top:300;"\ 
 
      <text fill="black" x=75 y=75 style="text-anchor: middle">1</text>\ 
 
      <path d="M38 0 L113 0 L150 65 L113 130 L38 130 L0 65 Z"/fill="none" stroke="blue"></svg>' 
 
    var svgElement = $(str); 
 
    svgElement.children('text').text(1); 
 
    svgElement.attr("class", "hexagon ui-widget-content"); 
 
    $("#display").append(svgElement); 
 
    }); //end click \t 
 
    $('#testbtm2').click(function() { 
 
    $('.hexagon').each(function() { 
 
     var svgElement = $('<svg class="hexagon" class="ui-widget-content">\ 
 
      <text fill="black" x=75 y=75 style="text-anchor: middle">1</text>\ 
 
      <path d="M38 0 L113 0 L150 65 L113 130 L38 130 L0 65 Z"/fill="none" stroke="blue"></svg>'); 
 
     svgElement.children('text').text(1); 
 
     svgElement.attr("class", "hexagon ui-widget-content"); 
 
     $("#display").append(svgElement); 
 
    }); 
 
    }); // end click 
 
}); // end ready
#display { 
 
    height: 500 px; 
 
    width: 500 px; 
 
    border: 1 px solid black; 
 
    overflow: auto; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div id="display"></div> 
 
<button id="testbtm">test</button> 
 
<button id="testbtm2">test2</button>

+0

最初のボタンをクリックすると、六角形が表示されます。 2番目のボタンをクリックすると、六角形の中央に番号1が表示されます。それは期待された結果ではありませんか? (IEを使用して) – m69

+0

いいえ、私も最初の六角形に番号が必要です。私はなぜ2番目の六角形が番号を持っているのか混乱していますが、最初の服用ではありません。ありがとうございます – tiger

答えて

1

ありがとうございます。

+0

こんにちは、私は六角形を作成するとき、私はすでに六角形とテキストが同じ時間に来ていない理由は、テキストを置く? 2番目のボタンは六角形を作成し、テキストと六角形は同時に表示されます。しかし、最初のボタンには六角形しかありません。ありがとうございます – tiger

+1

@tiger '>'が見つからないと、それの後にテキストタグが崩れます。 – m69

関連する問題