2

我有 iframe:

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<link rel="stylesheet" type="text/css" href="jquery-ui-1.9.2.custom.css">
<div id="slider"></div>
</body>
</html>

我有页面:

<!DOCTYPE html>
<html>
<head>
<script src="jquery.js"></script>
<script src="jquery-ui-1.9.2.custom.js"></script>
<title></title>
</head>
<body>
<iframe id="frame" src="iframe.html" width="800" ></iframe>
<script type="text/javascript">
$(document).ready(function() {
    $('#frame').contents().find('#slider').slider({
        value:2,
        min: 0,
        max: 6,
        step: 1,
        animate: true,
        slide: function( event, ui ) {
        }
    });
});
</script>
</body>
</html>

我只想要 iframe 中的自定义滑块,但这不起作用,我不知道为什么。这项工作在没有 iframe 的情况下完美。

更新:通过调用从 iframe 创建滑块的函数来修复问题

4

1 回答 1

0

iframe 是一个单独的 html 页面(不同的文档),由于安全原因,无法访问父级的脚本等。

您需要在 iframe html 文档中包含 jQuery 和 jQuery UI,并在该文档中运行该函数。

这是一个全面的原因:http: //javascript.info/tutorial/same-origin-security-policy

于 2013-11-30T22:54:42.250 回答