Объедините onload и onresize (jQuery)

Я хочу вызвать функцию на загрузке, а также на изменяют размер.

Существует ли лучший способ переписать это более сжато?

$('.content .right').width($(window).width() - (480));
$(window).resize(function(e) {
    $('.content .right').width($(window).width() - (480));
});
47
задан niton 15 April 2015 в 20:23
поделиться

2 ответа

Вы можете привязать к событию resize() и автоматически инициировать это событие при загрузке:

// Bind to the resize event of the window object
$(window).on("resize", function () {
    // Set .right's width to the window width minus 480 pixels
    $(".content .right").width( $(this).width() - 480 );
// Invoke the resize event immediately
}).resize();

Последний вызов .resize() запустит этот код при загрузке.

109
ответ дан 26 November 2019 в 19:10
поделиться

Приятно заметить повторяющуюся логику и перейти к функции:

function sizing() {
  $('.content .right').width($(window).width() - 480);
}

$(document).ready(sizing);
$(window).resize(sizing);
16
ответ дан 26 November 2019 в 19:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: