0

JQUEry を使用して、HTML ページのパネルを作成しようとしています。パネルには複数の div が含まれています。

私のJavaScript関数は次のとおりです。

function createQuestionPanel() {
    var topDiv = $('<div>top div</div>');
    var questionDiv = $('<div>bottom div</div>');
    topDiv.after(questionDiv);
    return topDiv;
}

この関数を呼び出して、HTML 要素の別の JQuery 表現に追加します。問題は、topdiv のみを表示することです。下部と上部の両方のdivを表示したい。createQuestionPanel() メソッドですべての div をラップする必要がありますか、またはこれを行うためのより良い方法はありますか?

ありがとう。

4

3 に答える 3

3

div別のレイヤーを追加するだけです:

function createQuestionPanel() {
    var div = $('<div>');
    $('<div>top div</div>').appendTo(div);
    $('<div>bottom div</div>').appendTo(div);
    return div;
}

フィドル: http://jsfiddle.net/maniator/d7MtM/

または、jQuery オブジェクトの配列を返すこともできます。

function createQuestionPanel() {
    var topDiv = $('<div>top div</div>');
    var questionDiv = $('<div>bottom div</div>');
    return [topDiv, questionDiv];
}

フィドル: http://jsfiddle.net/maniator/RhCpe/

于 2012-12-11T21:42:11.740 に答える
1

あなたはそれらを一緒に追加することができます

function createQuestionPanel() {
    var div = $('<div>top div</div><div>bottom div</div>');
    return div;
}
于 2012-12-11T21:44:26.173 に答える
0

jQuery を使用して 2 つの要素を作成し、それらに異なるテキストを指定add()して、それらをまとめて同じ行に返します。私の意見では、まだ読み取り可能です。

function createQuestionPanel() {
  return $('<div />', {text: 'top div'}).add($('<div />', {text: 'bottom div'}));
}
于 2012-12-11T22:01:18.293 に答える