2010-12-01 9 views
2

すべての機能していない、SVG 'DEF' タグは、JSのイベントで

は、Firefox 3.6 & Firefoxの4.0BでSVG 'のdefs' タグに関連付けられているJavaScriptのイベントと問題のビットを持っています。

私はSVGキャンバスに「defs」タグで囲まれた画像を持っています。今私はマウスが画像の上を転がるようにカーソルが座標を与えるカーソルにイベントを添付します。これはChrome、Safariでうまくいくようです。& OperaはFirefoxブラウザでは動作しません。 Firefoxでは、カーソルの動きに合わせて座標が表示されないというエラーは表示されません。

アドバイスや提案はありますか?

編集:エリック、返信をありがとう。エラーの謝罪、私は 'defs'タグを意味した。ここにコードです:

var cur= svgDoc.getElementById("BackDrop1") 
     cur.setAttribute("stroke-width","1") 
      zain.setAttribute("stroke","black") 
      zain.setAttribute("fill","purple") 
      zain.setAttribute("stroke","black") 
      zain.setAttribute("opacity","0.3") 
      zain.setAttribute("pointer-events","all") 

     cur.onmousemove=function(event) 
     { 

      x=event.pageX-320 
      y=event.pageY-330 
      if(x>0 && y<0) 
      { 
       document.getElementById("x").value=x 
       document.getElementById("y").value=y*(-1) 
      }else 
       if(x<0 && y<0) 
      { 
       document.getElementById("x").value=x 
       document.getElementById("y").value=y*(-1) 
      }else 
       if(x>0 && y>0) 
      { 
       document.getElementById("x").value=x 
       document.getElementById("y").value=y*(-1) 
      }else 
       if(x<0 && y>0) 
      { 
       document.getElementById("x").value=x 
       document.getElementById("y").value=y*(-1) 
      }else 
       if(x==0 && y==0) 
      { 
       document.getElementById("x").value=x 
       document.getElementById("y").value=y*(-1) 
      } 


     } 

私は何かの理由でSVGコードを通過させていません。 Iveはテキストファイルを4sharedにアップロードしました。希望はthats OKです。

JS & SVG defs issue in FF

答えて

0

SVGには<def>タグはありません。しかし、<defs>タグがあります。いくつかのサンプルコードがなくても何が間違っているのかを知ることは難しいです。ここに含めるか、リンクを投稿することはできますか? <defs>タグの中にあるものは直接描画されていないものなので、どういう意味なのか分かりません。

名前のついたタグ(<def>)(これは実装によってsvg名前空間で不明なタグとして扱われます)と、firefoxが他の要素からのものを参照することを拒否する<use>

1

Kayote、このファイルだけでなく、ファイル全体を投稿することを検討してください。余りにも多くの文脈がありません。初心者にとっては、id値 "x"と "y"が要素に割り当てられた場所がわかりません。エラーが存在する可能性があります。

私は今週のhtmlファイル内でsvgコンテンツの作業を始めました。最初に私が遭遇した問題は、作成した特定のファイルについて、.htmlではなく.xmlで終わるファイルを変更することでしたこれらのエフェクトは、作業中の.svgファイルからコピーされていても動作しない場合、svgエフェクトをHTMLページで使用するようにしてください。

私が遭遇したもう一つの問題は、このNSバージョンのdocument.createElementNSを使用して "使用"ノードを作成していないことです[すなわち、 "http://www.w3.org/2000/svg"を標準の.createElement呼び出しを使用するのではなく、この呼び出しにパラメータを指定します)。

何らかの理由で(私がまだ理解していない)、ansvgelement.setAttribute( "style"、 "visibility:hidden")の間にansvgelement.setAttribute( "visibility"、 "hidden" ") した。

あなたが注目しているビットとは何の関係もないさまざまなものがあります。

+0

ありがとうJose_X。私たちは最終的に問題を解決しました。また、 – Kayote

関連する問題