私はdivコンテナを持っています。ユーザーがこの div コンテナーをクリックすると、これが入力ボックスに置き換えられます。
ユーザーが入力ボックス以外のページのどこかをクリックすると、前の div が再び表示されるようにします。
これが私が今までなんとかやってきたことです。これは一度だけうまくいきます。これはJavaScriptコードです:
$(document).ready(function() {
$(".new-section").click(function(event) {
$(this).replaceWith('<div class="span8 offset1 create-section"><input type="text" placeholder="Enter the title of the section"></div>');
event.stopPropagation();
});
$(".create-section").click(function(event) {
event.stopPropagation();
});
$(document).click(function(event) {
$(".create-section").replaceWith('<div class="span8 offset1 new-section"><p>Click to add a new section</p></div>');
});
});
これは HTML コードです。
<div class="span8 offset1 new-section">
<p>
Click to add a new section
</p>
</div>
入力を div に置き換えた後、さらに div をクリックしても、入力ボックスは再び表示されません。クリックイベントは一度しかトリガーされないようです。基本的に私が欲しいのは:
1. ユーザーが div をクリックする
2. Div が入力に置き換えられる
3. ユーザーが入力の外側をクリックする
4. 入力が div に置き換えられる
5. ユーザーが div をもう一度クリックすると、入力ボックスが戻ってきます。
サイクルが繰り返されます。今のところ、これを機能させることができたのは一度だけです。私が間違っていることは何ですか?
編集: ユーザーが . ユーザーが Web ページの他の場所 ( 以外) をクリックした場合にのみ、 が再び表示されます。つまり、 と 要素の間のトグルです。