2016-09-16 6 views
-2

У меня есть следующий фрагмент кода яваскрипта для принуждать класс CSS, когда ширина находится под 768:Как изменить размер внутри iframe?

<script> 
$(document).ready(function() { 
    var resizing = false; 
    function doResize() { 
     var w=$(window).innerWidth(); 
     console.log(w); 
     if (w < 1320 && w > 768) { 
      $('input[name="start"]').val("Retry"); 
      $('input[name="stop"]').val("Stop"); 
     } else { 
      $('input[name="start"]').val("Retry command"); 
      $('input[name="stop"]').val("Stop command"); 
     } 
     if (w < 768) { 
      $('.div').addClass('mobile'); 
     } else { 
      $('.div').removeClass('mobile') }); 
     } 
    } 

    $(window).resize(function(e) { 
     if (resizing!==false) { 
      clearTimeout(resizing); 
     } 
     resizing=setTimeout(doResize, 200); 
    }); 
    }) 
    </script> 

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

Однако, когда я добавляю одну страницу внутри фрейма для мобильного приложения он перестает работать, и принимает на себя ширина превышает 768.

Edit: Кажется, там должно быть событие изменения размера для условий для Работа. Если я загружаю iframe со страницей в браузере и изменяю его размер, все работает нормально. Если я загружу его с шириной < 768, он добавит только класс css после изменения ширины окна.

Что может быть неправильным и как я могу это исправить?

+1

ли в настоящее время применяется Javascript из-за пределы плавающего фрейма? Если это так, это не сработает. –

+0

Загружает ли сценарий на страницу, когда она отображается внутри iFrame? – Renan

+0

Эта проблема не очень детальная, и это путает то, что вы просите. Кроме того, все, что вы предоставили, - это фрагмент кода, а не [mcve] – charlietfl

ответ

0

Я думаю, что все, что вам нужно, чтобы вызвать изменение размера сразу после того, обработчик настроен, или позвоните doresize()

$(window).resize(function(e) { 
     if (resizing!==false) { 
      clearTimeout(resizing); 
     } 
     resizing=setTimeout(doResize, 200); 
}).resize();// trigger it on page load now 
+0

charlietfl спасибо, вот и все! :) – NTor

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