2011-12-20 6 views
0

を解析して問題私はjQueryのに非常に新しいだと私は関数に文字列値を解析して問題を抱えています。jQueryのパラメータは

私が持っている:

function callAreaData(area) { 
     $("area[alt='" + area + "']").hover(function (e) { 
      $("div#bodyPlace_popupA").show(); 
      $("area[alt='" + area + "']").hide(); 
     }, function() { 
      $("div#bodyPlace_popupA").hide(); 
     }); 

     $("area[alt='" + area + "']").mousemove(function (e) { 
      $("div#bodyPlace_popupA").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft); 
     }); 
    } 

とそれは動作しません、私の

 $(document).ready(function() { 
      ... 
      var a = "Area A"; 
      callAreaData(a); 
      ... 
    }); 

以内にそれを呼び出します。関数の解析された値を文字列に相当するものに置き換えると、以下のように正常に機能するため、関数自体が機能することがわかります。しかし、それは私に必要な再利用性を与えるものではありません(私のウェブページ上の別のパラメータでこの機能を約10回以上使用する必要があるため)。

 function callAreaData() { 
     $("area[alt='Area A']").hover(function() { 
      $("div#bodyPlace_popupA").show(); 
      $("area[alt='Area A']").hide(); 
     }, function() { 
      $("div#bodyPlace_popupA").hide(); 
     }); 

     $("area[alt='Area A']").mousemove(function (e) { 
      $("div#bodyPlace_popupA").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft); 
     }); 
    } 

簡単に修正できるはずですが、わかりませんのでご協力ください。事前に

おかげで、ピーター

+0

あなたはjsfiddle.netにjsfiddleを作成できますか? – matt

+0

@Peter、助けがあれば回答を受け入れてください。ありがとうございました(緑の 'V'マークを確認してください) –

答えて

1

ような何か試してみてください。

 
$(document).ready(function() { 
var area = someArea; // get area from some hidden element 
$("area[alt='" + area + "']").hover(function (e) { 
      $("div#bodyPlace_popupA").show(); 
      $("area[alt='" + area + "']").hide(); 
     }, function() { 
      $("div#bodyPlace_popupA").hide(); 
     }); 

     $("area[alt='" + area + "']").mousemove(function (e) { 
      $("div#bodyPlace_popupA").css('top', e.pageY + moveDown).css('left', e.pageX + moveLeft); 
     }); 


}); 
+0

それはトリック、華麗な感謝を行うようだ –

関連する問題