Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Размеры через JS (https://javascript.ru/forum/dom-window/49686-razmery-cherez-js.html)

Batyabest 24.08.2014 14:36

Размеры через JS
 
Здравствуйте.
Помогите побороть следующую задачу.
Имеется некий скрипт вывода в модальном окне информации:

var layer = $('#layer'),
    modal = $('#modal'),
    modalContent = '<iframe src="http://site.ru"></iframe>';
$('.modal').click(function(){
    layer.show();
    modal.show().animate({
        width: 1200,
        height: 700,
    }, function(){
        $(this).html(modalContent);
    });
});


Здесь размеры заданы в скрипте в пикселях.
Нужно задать эти размеры в процентах. Потому что, на мелких экранах все вылезает за края монитора.

Batyabest 25.08.2014 11:41

Может такое в принципе невозможно?

Viral 25.08.2014 11:44

определяете разрешение экрана, считаете нужные вам пропорции относительно разрешения экрана и подставляете в функцию создания окна.
очевидно же

Veterinar 25.08.2014 12:10

Может быть проще использовать свойства стилей:
@media all and (orientation: landscape), all and (min-width: 480px) { ... }


и указать различные стили для разных размеров экрана.

Batyabest 25.08.2014 15:03

Цитата:

Сообщение от Viral (Сообщение 327354)
определяете разрешение экрана, считаете нужные вам пропорции относительно разрешения экрана и подставляете в функцию создания окна.
очевидно же

А кодик можете набросать? Хотя бы примерно.

Viral 25.08.2014 17:01

а пжалста))

var layer = $('#layer'),
    modal = $('#modal'),
    modalContent = '<iframe src="http://site.ru"></iframe>',
    wp = 0.5,// 50%
    hp = 0.3,// 30%
    w = window.outerWidth, //ширина окна
    h = window.outerHeight,//высота окна
    wWidth = w * wp, // ширина окна * 50%
    wHeight = h * hp; // высота окна * 30%


$('.modal').click(function () {
    layer.show();
    modal.show().animate({
        width: wWidth,
        height: wHeight,
    }, function () {
        $(this).html(modalContent);
    });
});


переменных наплодил для наглядности

Batyabest 25.08.2014 18:09

Спасибо, все просто оказывается, а я неделю думал и так и сяк. Век живи век учись, пошел литературу читать))))


Часовой пояс GMT +3, время: 14:06.