2015-04-14 4 views
0

Я внутри iFrame. Я контролирую содержимое внутреннего/внешнего/родительского/дочернего, и все это в одном домене. Исключений безопасности нет.Невозможно применить границу к iframe изнутри iframe

Если я запускаю это в консоли Chrome, граница применяется так же, как я хочу:

$("[name='PPDGFrame']").css("border", "2px solid #334930"); 

Но когда я точно такой же вещи программно, она никогда не работает:

$(document).ready(function() { 
     $("[name='PPDGFrame'], window.parent.document").css("border", "2px solid #334930"); 
}); 

Or даже в этом случае:

$(document).ready(function() { 
    setTimeout(function(){ 
     $("[name='PPDGFrame'], window.parent.document").css("border", "2px solid #334930"); 
    }, 3000); 
}); 

Выполнение кода не содержит ошибок, а в консоли я четко t дескриптор объекта. Еще нет границы.

Что я делаю неправильно?

ответ

1

Чтобы указать window.parent.document как context for the selector для поиска внутри, он должен передаваться как отдельный аргумент после строки.

$("[name='PPDGFrame']", window.parent.document) 
//     ^^ 

В настоящее время в селекторе, то , понимается как multiple selector и window.parent.document как element selector с class selectors ищет:

<window class="parent document"> 

Это действительный селектор, поэтому вы не получать любые ошибки. Это просто не подходит ни к чему, поскольку у вас, вероятно, нет такого элемента в вашем документе.

+0

Работает отлично. Спасибо за ваше время Джонатан. – HerrimanCoder

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