11

Document.createElementNS()のjQueryとは?

function emleGraphicToSvg(aGraphicNode) {
  var lu = function luf(aPrefix){
    switch (aPrefix){
      case 'xhtml': return 'http://www.w3.org/1999/xhtml';
      case 'math':  return 'http://www.w3.org/1998/Math/MathML';
      case 'svg':   return 'http://www.w3.org/2000/svg';
      }
    return '';
    };
  var svg = document.evaluate("svg:svg",
    aGraphicNode, lu, XPathResult.FIRST_ORDERED_NODE_TYPE, null).
    singleNodeValue;
  $(svg).children().remove();
  rect = document.createElementNS(lu('svg'), "rect");
  rect.setAttribute("x", "35");
  rect.setAttribute("y", "25");
  rect.setAttribute("width", "200");
  rect.setAttribute("height", "50");
  rect.setAttribute("class", "emleGraphicOutline");
  svg.appendChild(rect);
  }

このコードは、Emle-Electronic Mathematics Laboratory Equipment JavaScript ファイルemle_lab.jsの単純化されたフラグメントです。

Look-Up-Function はluf()、完全な参照を XPath 文字列内の名前空間の短縮名にマップし、createElementNS(). 既存のsvg:svgものを見つけて削除し、新しい長方形に置き換えます。

4

2 に答える 2

2

SVG については、いくつかの評価タイプのプロジェクトでKeith Wood の jquery.svgを使用しました。

于 2010-04-03T19:10:14.967 に答える