0

オブジェクトをドラッグ アンド ドロップするために jQuery UI プラグインを使用していますが、問題があります。私のhtmlソースは次のようなものです:

<html>
 <body>
  <div id="firstDiv">some thing is here</div>
 </body>
</html>

ここで、ヘルパーを使用して上記の div をドラッグ可能にしたいと考えています。私のコードはこれです:

<script type="text/javascript">
 $(document).ready(function(){
  $("#firsstDiv").draggable({helper:anImage});
 });
 function anImage() {
  return '<img src="~/myImage.png" alt="" />';
 }
</script>

わかりました、このコードも機能しますが、画像アドレスを設定したいのですが、関数をパラメーターを持つように変更すると機能しません、O_o

私の新しいコードはこれです:

<script type="text/javascript">
 $(document).ready(function(){
  $("#firsstDiv").draggable({helper:anImage($(this).text())});
 });
 function anImage(address) {
  return '<img src="'+address+'" alt="" />';
 }
</script>

しかし、機能していません。

助けてくれてありがとう。

4

1 に答える 1

0

OK-ヘルパー関数にパラメーターを渡すことはできません。それが問題だと私はかなり確信しています。

これを回避する方法は、セットアップ関数を作成し、anImageそこから関数を呼び出すことです。

$(function(){
    $("#firsstDiv").draggable({
        helper: setup
   });
});

// function to setup draggable DOM elements
function setup() {
    anImage("~/myImage.png");
    // ... do other setup things here too
}

function anImage(imageAddress) {
    return '<img src="'+imageAddress+'" alt="" />';
}

もちろんanImage、ドラッグ可能な要素ごとに異なる画像アドレスで呼び出しようとしている場合を除きます。その場合、上記は機能しません。ただし、ヘルパー関数を使用してこれを行うべきではありません。これは、作成しているすべてのドラッグ可能な要素をセットアップするためのコードが含まれていることを意味していると確信しているためです。

お役に立てれば、

ジェームズ

于 2012-04-11T11:55:46.290 に答える