Tuesday, September 29, 2015

Bạn sử dụng một iframe trong website để hiển thị nội dung (nội dung một website khác hoặc nội dung từ các file tài liệu, ....) nhưng bạn gặp một vấn đề về chiều cao của iframe.
Tự động fix chiều cao cho iframe
 Nếu bạn đặt thuộc tính height = "auto" thì iframe không tự động co giãn chiều cao theo nội dung nó chứa mà chỉ hiển thị một phần rất nhỏ. Nếu bạn đặt height = "100%" thì cũng không tác dụng. Còn nếu bạn đặt height="n px" (n là một giá trị cố định bất kì) thì đôi lúc nội dung quá ngắn sẽ xuất hiện một khoảng trắng bên dưới rất xấu, hoặc khi nội dung quá dài thì iframe không hiển thị được hết nội dung. 

Toàn Cầu Web sẽ hướng dẫn các bạn dùng Jquery để iframe tự động fix chiều cao theo nội dung bên trong nó.

Đầu tiên bạn cần tải jquery tại: jquery.com khai báo Jquery:

<script language="javascript" type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>


Sau đó bạn dán javascript sau và trang web của bạn:

<script type="text/javascript">
        //function to fix height of iframe!
        var calcHeight = function () {
            var headerDimensions = $(#mainlivedemo).height();
            var selector = ($(.stretched).length > 0) ? #iframelive : #iframelive iframe;
            $(selector).height($(window).height() - headerDimensions);
        }
        $(document).ready(function () {
            calcHeight();
        });
        $(window).resize(function () {
            calcHeight();
        }).load(function () {
            calcHeight();
        });
              </script>


Bạn lưu ý ID "iframelive", iframe của bạn sẽ được đặt bên trong một DIV có ID "iframelive":

<div id="iframelive">
    <iframe src="http://toancauweb.com/" style="width:100%; border:none;"></iframe>
</div>
 
Như vậy là bạn đã tạo được một iframe có chiều cao tự động fix với nội dung.

0 Comments:

Post a Comment