Ответ 1
Возможно, проблема в том, что содержимое iframe не было загружено, попробуйте
$("#Your-Iframe-Id").load(function (){
// write your code here
});
У меня возникают проблемы с focus(function(){})
и blur(function(){})
внутри script, которые вложены в динамически загруженный iframe..
Ниже находится тег script В том случае, когда iframe динамически загружается. Любое событие, которое я вбрасываю в разметку script, не работает, простые вещи, такие как $('input').click(function(){alert('fired')});
, даже не запускаются. Я не уверен, что происходит.
Да, jQuery загружается в iframe в голове.
<script type="text/javascript">
// <![CDATA[
$(document).ready(function() {
$('.form .field-content').find('input, select, textarea').focus(function() {
$(this).closest('.field').addClass('focused');
});
$('.form .field-content').find('input, select, textarea').blur(function() {
$(this).closest('.field').removeClass('focused');
});
$('.form .field-content').find('input, select').keypress(function(e) {
if (e.which == 13) {
e.preventDefault();
$(this).closest('.form').find('.button').first().click();
}
});
$('.form .button').focus(function() {
$(this).addClass('focused');
});
$('.form .button').blur(function() {
$(this).removeClass('focused');
});
// focus on first field
$('.form .field-content').find('input, select, textarea').first().focus();
});
// ]]>
</script>
Возможно, проблема в том, что содержимое iframe не было загружено, попробуйте
$("#Your-Iframe-Id").load(function (){
// write your code here
});
для динамически загружаемого содержимого вы должны взглянуть на jQuery функция live()
Является ли iframe загрузкой URL-адреса, который является другим доменом, чем родительский контейнер? Если это так, вы не сможете использовать javascript для управления его содержимым.
Я думаю:
$('.form .field-content').find('input, select, textarea').focus(function() {
$(this).closest('.field').addClass('focused');
});
должен быть:
$('.form .field-content').find('input, select, textarea').each(function(index) {
$(this).focus(function(){
alert('element ' + index + ' focused');
});
alert('bind focus event in element ' + index);
});
приветствий.
Это может иметь какое-то отношение к безопасности в вашем браузере. Запутайтесь с некоторыми настройками для зоны и посмотрите, поможет ли это.
Какой браузер вы используете?