0

在隐藏它并替换它的内容后,我在一段时间内淡出时遇到了一些麻烦。

这是我替换之前的html

<span id="replace_with_editor">
    <a id="edit_button" class="btn btn-success" href="thread.php">Post ny tråd</a>
</span>

这是我的 jQuery 代码

replace_with_editor = $('#replace_with_editor');
    $('#edit_button').click(function(e) {
        e.preventDefault();
        replace_with_editor.hide();
        replace_with_editor.html('<form role="form" method="post" action="process/submit_thread.php"><div class="form-group"><label for="Title">Tittel</label><input id="thread_title" name="thread_title" type="text" class="form-control" placeholder="Skriv en tittel for tråden."></div><div class="form-group"><label for="Svar">Tråd</label><textarea id="thread_editor" name="thread_content" rows="10" class="form-control"></textarea></div><input type="hidden" value="category_id" name="category_id"><input type="hidden" value="forum_id" name="forum_id"><button type="submit" class="btn btn-success">Post tråd</button></form>');
        replace_with_editor.fadeIn(2000);
    });

出于某种原因,当我尝试此脚本时,会显示新内容,但 fadeIn() 不起作用,它会立即显示。

任何猜测我做错了什么?哦,由于调试,jQuery 没有嵌套。任何帮助深表感谢。

4

1 回答 1

0

尝试像这样传递一个回调你的隐藏函数。

replace_with_editor = $('#replace_with_editor');
    $('#edit_button').click(function(e) {
        e.preventDefault();
        replace_with_editor.hide(function(){
        replace_with_editor.html('<form role="form" method="post" action="process/submit_thread.php"><div class="form-group"><label for="Title">Tittel</label><input id="thread_title" name="thread_title" type="text" class="form-control" placeholder="Skriv en tittel for tråden."></div><div class="form-group"><label for="Svar">Tråd</label><textarea id="thread_editor" name="thread_content" rows="10" class="form-control"></textarea></div><input type="hidden" value="category_id" name="category_id"><input type="hidden" value="forum_id" name="forum_id"><button type="submit" class="btn btn-success">Post tråd</button></form>');
        replace_with_editor.fadeIn(2000);
});
    });

我还添加了一个 jsfiddle 来向您展示您想要得到的东西。 http://jsfiddle.net/JfGZM/

于 2013-10-20T23:03:28.063 回答