2010-02-14 31 views

Trả lời

5

Những gì bạn đang seing, có thể là một ứng dụng thông tin liên lạc "sao chổi", sử dụng một iframe ẩn như kênh dữ liệu. Một lời giải thích ngắn của kỹ thuật theo Wikipedia:

Một kỹ thuật cơ bản cho các ứng dụng web động là sử dụng một yếu tố IFrame HTML ẩn (một khung nội tuyến, cho phép một trang web để nhúng một tài liệu HTML bên khác). IFrame vô hình này được gửi dưới dạng khối chunked, nó ngầm khai báo nó là vô hạn lâu (đôi khi được gọi là "khung vĩnh viễn"). Khi sự kiện xảy ra, khung nội tuyến dần dần được lấp đầy bằng các thẻ tập lệnh, chứa JavaScript được thực thi trong trình duyệt. Bởi vì các trình duyệt hiển thị từng trang HTML, mỗi thẻ script được thực hiện khi nhận được.

Điều này có thể được sử dụng để trò chuyện, nơi thông báo được mong đợi xuất hiện mà không bị chậm trễ đáng kể và tốt nhất là không có "bỏ phiếu" định kỳ cho dữ liệu mới. Nếu đây là những gì bạn đã gặp phải, bạn sẽ thấy một số yếu tố <script> trong khung và nhiều hơn nữa sẽ được thêm vào khi thời gian trôi qua.

1

javascript nạp trong iframe không có quyền truy cập vào đối tượng trang mẹ (hạn chế cross-domain)

+0

Là một "hạn chế tên miền chéo", điều này sẽ chỉ áp dụng nếu iframe từ một miền khác với trang mẹ, phải không? –

+1

Xem câu trả lời của tôi: Tôi không biết liệu các tên miền khác nhau có giới hạn quyền truy cập vào trang gốc hay không, nhưng chúng làm rõ ràng là thêm mỗi hàm/biến với số duy nhất để sandbox hiệu quả cho chúng –

+0

Hoàn toàn đúng :-) Tôi đoán tôi hiểu sai câu hỏi. – Qwerty

4

EDIT

Vì vậy, để thực sự giải quyết câu hỏi của bạn ... Tôi không biết! Thông tin sau có thể hữu ích, tuy nhiên:

Facebook sẽ thêm tất cả các biến và chức năng JS cùng với ID ứng dụng của bạn.

var ID; 

trở thành

var 1262682068026-ID; 

này giới hạn phạm vi của javascript của bạn để chỉ ứng dụng của bạn, do đó bạn không thể sử dụng DOM để có được bạn bè của họ, số điện thoại, email, địa chỉ, vv, trừ khi được ủy quyền. Nó làm cho một ít tiểu sandbox cho bạn để chơi trong

Thông tin thêm về Phạm vi ở đây:. Facebook Docs

+3

Cách này trả lời câu hỏi? – SLaks

+0

Làm giảm mục đích là tạo một hộp cát –

+0

123-ID là tên biến hợp lệ như thế nào? nghĩ rằng bạn có nghĩa là 123_ID. Bạn nên cập nhật. – mythz

1

Họ nạp sao chổi (hay còn gọi là sao chổi, HTTP Push, tồn tại lâu dài, vv) các kết nối trong một iFrame vì Internet Explorer cuối cùng giọt nó:

http://cometdaily.com/2007/10/25/http-streaming-and-internet-explorer/

Vì nó là một cách hiệu quả một cuộc thăm dò dài liên tục, đây là một chặn, hack này cũng làm tăng giới hạn kết nối 2 của IE dẫn đến đáp ứng tốt hơn, thông tin nền:

http://alex.dojotoolkit.org/2006/02/what-else-is-burried-down-in-the-depths-of-googles-amazing-javascript/

Các vấn đề liên quan