2013-05-25 4 views
1

Как получить элемент из iframe? Я хочу, когда атрибут элемента, который его в кадре истинно; он показывает текст, а другой показывает другой текст; (простите за плохой английский!)Получить элемент внутри iframe с помощью javascript

подобное:

<!DOCTYPE html> 
    <html> 

    <head> 
    <title>document</title> 
    </head> 

    <body> 

    <iframe id="frame" src=""> 

    <!--we think in frame there is a span tag with button id--> 
    <span id="button" aria-passed="true">sss</span> 
    </iframe> 
    <br> 

    <!--if its true--> 
    <p id="content1" style="display:none;"> 
    true 
    </p> 
    <!--if its false--> 
    <p id="content2" style="display:none;"> 
    false 
    </p> 

    <!--now we want that, if aria-passed=true show content1 else content2.--> 
    <script type="text/javascript"> 
    var Frame = document.getElementById('frame'); 
    if(new RegExp ("true","gim").test(frame.contentWindow.document.getElementById('button').aria-passed="true") == true) { 
    document.getElementById('content1').style.display="block"; 
    } 
    else { 
    document.getElementById('content2').style.display="block"; 
    } 
    </script> 
    </body> 

    </html> 

теперь я хочу сказать, почему этот код не работает ???? любые идеи?

+0

'.aria-pass' не является собственностью - этот код ищет свойство' aria' и вычитает некоторую неопределенную переменную 'pass'. И '=" true "" сразу после этого обязательно должно быть ошибкой, поскольку вы пытаетесь присвоить выражение значение, что невозможно. Кроме того, JavaScript чувствителен к регистру, поэтому вы не можете объявить переменную как «Frame», а затем использовать «frame» – Ian

ответ

0

Я думаю, что iframe в вашем коде выше - это просто демонстрация того, как выглядит загруженный код страницы? Взгляните на это сообщение Javascript - Get element from within an iFrame. Также измените переменную «Frame» на нижний регистр.

1

Это намного проще, если вы используете jquery.

Пример код:

var elementattibutevalue = $("#frameID").contents().find("#htmlelementID").attr("SampleAttribute"); 

Надеется, что это помогает. (^ _ ^)

Смежные вопросы