Saya mencoba membuat aliran komentar seperti di Reddit menggunakan HTML/jQuery.

Saya sudah memiliki formulir komentar untuk tombol balasan posting utama yang berfungsi seperti yang saya inginkan dan sekarang saya ingin menggunakan formulir yang sama untuk semua tombol balasan komentar anak.

Saya mencoba melakukannya dengan kode jQuery di bawah ini menggunakan inserAfter() tetapi hanya berfungsi sebagian yaitu Ketika saya mengklik tombol balas komentar anak mana pun, formulir komentar muncul sekali untuk komentar anak terakhir dan kemudian ketika saya mengkliknya formulir komentar dua kali ditampilkan untuk semua komentar anak.

Di bawah ini adalah jQuery saya -

$(".comment-box-link, .comment-box").on('click', function(e) {
    $('.new-topic-wrapper').slideToggle('fast');

    if ($(".new-topic-wrapper").is(':visible')) {
        $("html, body").animate({ scrollTop: $(".new-topic-wrapper").offset().top - 50 }, 'fast');
    }
});
$('.comment-box').click(function(e) {
    $('.new-topic-wrapper').show().insertAfter('.comment-bottom');
});
0
rowdy 14 Agustus 2017, 14:00

2 jawaban

Jawaban Terbaik

Anda perlu membatasi fungsi untuk dilampirkan ke single-comment-wrapper yang diklik. Temukan leluhur yang sesuai dari tombol yang diklik, lalu lampirkan setelah elemen yang diinginkan:

$('.comment-box').click(function(e) {
    $('.new-topic-wrapper').show().insertAfter($(this).closest('.single-comment-wrapper').find('.comment-bottom'));
});

Lihat: https://codepen.io/anon/pen/broyzo

1
Jon P 15 Agustus 2017, 06:50

Anda dapat memuat konten html halaman Anda dalam div melalui AJAX

$.ajax({
    url: 'html_file.html',
    type: 'POST',
    dataType: 'html',

})
.done(function(result) {
    $("#output").html(result);
});

Coba gunakan ajax untuk memuat html di halaman Anda - Jquery Ajax

0
Meenesh Jain 14 Agustus 2017, 11:07