2016-12-06 48 views
-1

下面是一個例子,我試圖運行刪除iframe中的類「location_description」的div元素,但它不起作用。任何解決方案

HTML

<div id="kk"> 
    <iframe id = "weatherFrame" src="https://www.meteoblue.com/el/%CE%BA%CE%B1%CE%B9%CF%81%CF%8C%CF%82/widget/daily?geoloc=detect&days=4&tempunit=CELSIUS&windunit=KILOMETER_PER_HOUR&coloured=coloured&pictoicon=1&maxtemperature=1&mintemperature=1&layout=light" frameborder="0" scrolling="NO" allowtransparency="true" sandbox="allow-same-origin allow-scripts allow-popups" class = "weatherFrame" style = "width: 60%;height: 100%;"></iframe> 
    <div> 
     <a href="https://www.meteoblue.com/el/%CE%BA%CE%B1%CE%B9%CF%81%CF%8C%CF%82/%CF%80%CF%81%CF%8C%CE%B3%CE%BD%CF%89%CF%83%CE%B7/%CE%B5%CE%B2%CE%B4%CE%BF%CE%BC%CE%AC%CE%B4%CE%B1?utm_source=weather_widget&utm_medium=linkus&utm_content=daily&utm_campaign=Weather%2BWidget" target="_blank"></a> 
    </div>  
</div> 

的jQuery(的<body>結束)

$('#weatherFrame').load(function(){ 
    alert("in"); 
    $("location_description").remove(); 
}); 
+2

是iframe的內容和主要頁面上的同一個域? –

+0

where'location_description'? – Mahi

回答

3

如果iframe的域名是不一樣的父頁面的域名,你將無法操縱其內容,因爲same origin policy

如果它們是不同的域,但您可以控制其內容(也就是說,您可以向其添加代碼),則可以使用Postmessaging來執行您正在嘗試執行的操作。只需在iframe的內容中添加一個偵聽器,告訴它何時觸發此更改。

從看域但是我想這是不是你的頁面,所以沒有什麼可以做

0

使用jQuery,如果你想通過它的類刪除的東西,那麼這將是你的語句來做到這一點:

$(「。location_description」)。remove();

而在iframe中,你不能做這樣的操作。 可以使一些事情如下

 iframe.contentWindow.postMessage('Hello ');

相關問題