이상한 문제가 있으며 Google에서 답변을 찾을 수 없습니다 ... 페이지에서 jquery로 iframe을 동적으로 작성하고 fullfil합니다. 그것은 withFF와 IE는 잘 작동하지만 은 Safari가 아니라입니다.동적으로 생성 된 iframe이 Safari에서 작동하지 않습니다.
iframe이 생성되었지만 비어 있습니다 ("인사말이 iframe에서!"메시지가 누락되었습니다). iframe이 사파리와 함께 빈칸 이유
<!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" xml:lang="fr-fr" lang="fr-fr" >
<head>
<title>iframe</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
var jFrame = $('<iframe id="myiframe" name="myiframe">');
jFrame.css({'height':'40px','width':'200px'}).appendTo($('#container'));
$('#myiframe').load(function() {
jFrame.contents().find("body").html('greetings from the iframe !');
});
});
</script>
</head>
<body>
<div id="container"></div>
</body>
</html>
난 정말 궁금해 : 다음은 코드의 조각을 설명하는 것입니다. "내용()"이 잘 해석되지 않은 것 같습니다 ...
아이디어가 있습니까?
친애하는 닉, 고맙습니다, 그것은 잘 작동합니다! 저는 jQuery에 상당히 초보자입니다. 그리고 제 코드가 당신 것과 같이 작동하지 않는 이유를 솔직하게 이해하지 못합니다. 싱크로/비동기에 관한 것입니까? 다시 한번 감사드립니다. mhammout – user365351
@mhammout -'load (...) '가 DOM에 삽입 될 때 즉시'load' 이벤트가 * 발생합니다. 실행하므로 해당 이벤트가 발생할 때 실행 핸들러를 조작 했더라도 이벤트가 이미 발생했습니다. –
감사합니다! – user365351