0

これは学校向けのプロジェクトで、ホットかノットゲームのようなものです。ユーザーは、div face1 または div face2 に配置された 2 つの写真を取得します。左/右または s/d を押して、お気に入りを選択できます。

関数の if ステートメントで次の問題が発生しています。コード 37 (左矢印) と 83 (s キー) のキーが押されたときに、ユーザーが「face1」を選択したことがわかっています。

ページに「var w」を表示すると、#face1が正しく表示されます。これで、winnerid の #face1 の周りに引用符を追加すると、正しく「#face1」 と表示されます

<div id="face1"> 432 </div>

$(document).keyup(function (e) {
  if (e.which == 37 || e.which == 83) {
  var w = '#face1';
  var winnerid ='"' + w + '"';
  var id= $(winnerid).text();
  $("h1 span").text(id);      

  }
  else if(e.which == 39 || e.which == 68) {
  $("h1 span").text("right");
  }
});
4

3 に答える 3

1

jQuery セレクターを囲む引用符を含めたくありません。使用するだけです:

var w = '#face1';
var id= $(w).text();

jQuery 関数 ( $()) は、文字列 (とりわけ) を (とりわけ) セレクターとして受け入れます。したがって、次の内容を含む文字列変数#face1を単純に渡すことは、次と同じです。

var id = $('#face1').text();
于 2013-04-04T16:29:11.627 に答える
0

セレクターに引用符を追加しないでください。

交換

var winnerid ='"' + w + '"';
var id= $(winnerid).text();

var id= $(w).text();
于 2013-04-04T16:29:02.483 に答える
0

これら 2 つのステートメントの 2 行目を削除できます

  var w = '#face1';
  var winnerid ='"' + w + '"';    < ----  Remove this 
  var id= $(winnerid).text();

var w = '#face1';
 var id= $(w).text();
于 2013-04-04T16:29:04.070 に答える