У меня есть такая страница ...

<div>
<iframe id="mainContent">
<iframe id="littleBox">
</div>

И я хочу сделать это ...

 $(".someButton").live('click', function() {
       alert(/*The URL That the Main Frame is ON*/);
 });

Я нашел это: $("#mainFrame").get(0).location.href, но это не работает ...

Кроме того, мне нужно, чтобы он возвращал текущий URL, поэтому, если кто-то перемещается по нему, он должен вернуть текущую страницу, на которой он находится.

1
Jason 14 Сен 2010 в 05:37

4 ответа

Лучший ответ

Итак, вы имеете в виду, что вы должны получить доступ к URL-адресу родителя из дочернего iframe?

$("#mainFrame").get(0).contentWindow.location
13
xar 15 Сен 2010 в 13:19

Как говорит Азмисов, iframe.src делает свое дело

<head runat="server">
    <title>iframe Test</title>
    <script type="text/javascript">
        function ShowURLs() {
            var control = document.getElementById("mainContent");
            alert("iframe source = " + control.src);
            alert("this page = " + location.href);
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <input type="button" id="someButton" value="Click Me" onclick="ShowURLs()" />
        <div>
            <iframe id="mainContent" src="Test.aspx" />
            <iframe id="littleBox" />
        </div>
    </div>
    </form>
</body>
0
JumpingJezza 14 Сен 2010 в 03:02

Iframe.src не работает? Или вы пытаетесь получить родительский документ? В этом случае вы можете просто использовать parent.

0
Azmisov 14 Сен 2010 в 01:41
document.getElementById('mainContent').contentWindow.location.href
0
j0k 20 Авг 2012 в 11:53