2013-06-27 52 views
5

Ai đó có thể đề xuất thủ tục đơn giản để tải hình ảnh từ nguồn cấp dữ liệu RSS trong trang HTML bằng jQuery?Lấy hình ảnh từ nguồn cấp dữ liệu blog trong trang HTML bằng cách sử dụng jQuery

Tôi đã thử đoạn mã sau trả về hình ảnh trên Internet Explorer và Dreamweaver xem trực tiếp nhưng không phải trên Firefox. Mã thành công lấy hình ảnh từ các tệp XML.

Đây là mã

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    <title></title> 

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js"></script> 
    <script> 
    $(document).ready(function() { 
    $.ajax({ 
    type: "GET", 
    url: "http://wmtechnology.wordpress.com/feed?alt=rss", 
    dataType: "xml", 
    success: xmlParser 
}); 
}); 




    function xmlParser(xml) { 



    $(xml).find("image").each(function() { 

    $("#a1").append('<img src="'+$(this).find("url").text()+'">' + $(this).find("title").text()); 


    }); 



    } 
    </script> 

    </head> 
    <body> 

    <p id="a1"></p> 
    </body> 
    </html> 
+3

không phải là cuộc gọi tên miền chéo này phải không? – krishgopinath

+0

url được cung cấp trong mã là nguồn cấp dữ liệu rss ... Bạn có thể phát hiện lỗi bất kỳ trong mã không? –

+0

khi tôi sử dụng tệp xml tĩnh thay vì url ... mã có vẻ hoạt động đúng cách –

Trả lời

0

Lý do mà nó không hoạt động là do sự Same Origin Policy cho JavaScript. Bạn chỉ được phép gửi yêu cầu tới cùng một máy chủ mà từ đó bạn đã phục vụ trang.

Bạn phải gửi yêu cầu đến máy chủ của riêng mình và để máy chủ truy xuất XML cho bạn và trả lại cho nó (như proxy). Điều đó sẽ hoạt động trên tất cả các trình duyệt.

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