Mọi người cho em hỏi đoạn code này đúng chưa

Discussion in 'Linux - PHP - Python - C# - Java' started by Sanhpv, Feb 28, 2020.

  1. Sanhpv

    Sanhpv Sơ Nhập Giang Hồ

    [​IMG]
    mọi người cho e hỏi sai ở đâu mà thẻ </div> với </li> màu đỏ vậy
     
  2. wpresources

    wpresources Bang Chúng

    Do thiếu thẻ đóng bổ sung một</div dưới title-img xem
     
  3. Sanhpv

    Sanhpv Sơ Nhập Giang Hồ

    vẫn đỏ a ơi
     
  4. sugoku

    sugoku Khách Qua Đường

    bác code thiếu thẻ đóng </a> kìa
     
  5. Sanhpv

    Sanhpv Sơ Nhập Giang Hồ

    thẻ </a> nằm ở đâu vậy bác sửa cho e phát
     
  6. Nai

    Nai MiddleMan Staff Member

    Đề nghị thớt post code đầy đủ lên
     
  7. Sanhpv

    Sanhpv Sơ Nhập Giang Hồ

    Code:
        </header> <!-- end article header -->
                   
                            <section class="post_content">
                            <li class="col-sm-3 item-post col-6">
                                <?php $url = get_the_post_thumbnail_url(get_the_ID(),'full'); ?>
                                <div class="box-item">
                                    <a href="<?php the_permalink();?>" class="img-dd" rel="nofollow">
                                        <?php the_post_thumbnail(array(800,900));?>
                                                <span class="status"> <?php the_field('quan');?> </span>
                                                <div class="meta-img">
                                                    <div class="author-img"> <?php the_field('tac_gia');?> </div>
                                                    <div class="title-img"> <?php the_title();?> </div>
                                    </div><!--end meta-img-->
                                </div><!--end box-item-->
                            </li> <!-- end article -->
                           
                            </section> <!-- end article section -->
                           
                            <footer>
                               
                            </footer> <!-- end article footer -->
                       
                        </article> <!-- end article -->
    đây a
     
  8. sugoku

    sugoku Khách Qua Đường

    bác thêm </a> vào trước đoạn này
    </div><!--end box-item-->
     
    wpresources likes this.
  9. Sanhpv

    Sanhpv Sơ Nhập Giang Hồ

    dạ ok thanks bro thế e k nhìn ra
     
  10. Thanh Nguyen

    Thanh Nguyen Bang Chúng

    dùng editor chuyên cho code web sẽ nhìn thấy rõ hơn. B mở bằng notepad thì có dân chuyên code nhìn cũng khó
     
  11. wpresources

    wpresources Bang Chúng

    Bạn nào xem dùm mình mã jquery này với.Biến fileName trong getJSON nó tự tăng đúng rồi.Nhưng fileName trong addRelatedPost lại không
    Code:
    function showRelatedPost(fileName) {
        for (i = 0; i < 5; i++) {
            $.getJSON(++fileName, function (data) {
                addRelatedPost(fileName, data);
            });
        }
    }
    Cụ thể khi chạy fileName trong getJSON chạy từ 1->6 còn trong addRelatedPost giá trị cố định là sáu luôn
     
    Last edited: Mar 1, 2020
  12. xmenvn2510

    xmenvn2510 Moderator + MiddleMan Staff Member

    ++fileName: cái này là cái gì thế? {baffle}
     
  13. wpresources

    wpresources Bang Chúng

    Biến tự tăng thôi anh mỗi khi lặp nó tăng lên 1
     
  14. Thanh Nguyen

    Thanh Nguyen Bang Chúng

    Cụ thử gán biến mới bằng filename + 1 rồi gán biến mới vào trong addRelatedPost xem sao
     
    wpresources likes this.
  15. wpresources

    wpresources Bang Chúng

    Lỗi này mình tìm được tên là JavaScript closure inside loops.Các giải thích trên mạng khá lằng nhằng và khó hiểu với mình chung quy nó giải quyết như sau
    Code:
    function showRelatedPost(fileName) {
        for (let i = fileName; i < 10; i++) {
            $.getJSON(i, function (data) {
                addRelatedPost(i, data);
            });
        }
    }
     
    Thanh Nguyen likes this.
  16. princenuce

    princenuce Sơ Nhập Giang Hồ

    Code:
    function showRelatedPost(fileName) {
        for (i = 0; i < 5; i++) {
            (function(f1, f2){
                $.getJSON(f1, function (data) {
                    addRelatedPost(f2, data);
                })
    
             })(filename, ++fileName);
        }
    }
    $.getJSON là 1 hàm bất đồng bộ nên khi bạn loop thì vòng loop của bạn sẽ kết thúc trước khi 1 trong các call back của nó được gọi, do đó filename mà nó nhận được trong callback "Thường" là giá trị cuối cùng.
    để giải quyết thì ta buộc mỗi lần call getJSON sẽ cho nó 1 scope riêng bằng cách dùng anonymous function như trên, bạn thử đi.
     
    wpresources and Nai like this.
  17. wpresources

    wpresources Bang Chúng

    Thank bạn.Mình còn có một vấn đề về đồng bộ thế này.Bạn xem giúp mình nhé

    1.File index.html : include dữ liệu từ file embed.html
    Code:
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <a href="#demo_link>AA</a>
    <div id="place_holder"></div>
    <script>
        $(document).ready(function () {
            $("#place_holder").load("embed.html");
        });
    </script>
    2.embed.html : Mã gọi đến javascript action.js
    Code:
    <script src="action.js"></script>
    3.action.js : Sự kiện khi click thẻ a
    Code:
    $(document).ready(function () {
        $("a").click(function () {
            alert($(this).attr("href"));
        });
    });
    Khi thực thi câu lệnh nó đúng.Nhưng nó console luôn thông báo
    [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check
     
    Last edited: Mar 2, 2020
  18. xmenvn2510

    xmenvn2510 Moderator + MiddleMan Staff Member

    Mã html gì mà sâu thế không biết.
    Tóm lại là trình bày ý tưởng ra đây. Anh em hỗ trợ.
    Chứ toàn cho 1 đống code thì ai biết đâu mà lần.
    Đã gửi code thì phải cho đầy đủ file đính kèm lên.
     
  19. wpresources

    wpresources Bang Chúng

    Ý tưởng thì em làm thử một số website tĩnh thôi.
    Trong câu hỏi em có đưa thiếu file nào đâu.Đủ cả rồi mà.
    Ví dụ: với mã trên sau này em cần thay giao diện chỉ cần truyền tên gọi đến thư mục theme.Kiểu lắp ghép,xếp hình các phần mã lại với nhau vậy
    Tệp mã : https://gofile.io/?c=bxgC8e
     
    Last edited: Mar 3, 2020
  20. princenuce

    princenuce Sơ Nhập Giang Hồ

    Đại khái nó báo là bạn đang chạy một xhr đồng bộ trên luồng chính, khi xem dev tool thì mình thấy rằng ngoài load ra jquery còn thực hiện 1 xhr khác để load file action.js, mình ngi ngờ cái xhr này là đồng bộ nên mới ném ra cánh bảo thế. Nếu làm 1 trang tĩnh thì mình ngĩ bạn nên dùng vue cho đơn giản mà dễ, ko nên dùng jquery nữa.
     
    wpresources likes this.