Функция jQuery в медиа-запросе не запускается, как ожидалось - PullRequest
0 голосов
/ 11 июня 2019

Я изучаю JQuery. Я использую медиа-запрос. Когда я уменьшаю окно браузера, весь код отвечает, как и ожидалось, за исключением моей вложенной функции (которая начинается с $( "tr" ).each(function() {).

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

Как мне заставить все выстрелить без обновления страницы?

function myFunction(x) {
  if (x.matches) { // If media query matches
    $( "tbody tr" ).wrapInner( "<label class='wrapper'></label>" );
    $( ".overdueTicket" ).closest( "tr" ).addClass( "overdue" );
    $( ".paperclip" ).closest( "tr" ).addClass( "paperclip-icon" );
    $( ".paperclip-icon td.osta_ticket" ).append( "<div class='ticket-has-attachement' data-placement='top' data-toggle='tooltip' data-original-title='<?php echo __('Ticket Has Attachment'); ?>'>&nbsp;</div>" );
    $( "tr" ).each(function() {
        var $this = $(this),
            $href = $this.find( ".pull-right "),
            $target = $this.find( "td.osta_ticket" );
        $href.appendTo($target);
    });
  } else {
    $("tbody tr > .wrapper").contents().unwrap();
    $('.overdueTicket').closest('tr').removeClass("overdue");
    $('.paperclip').closest('tr').removeClass("paperclip-icon");
  }
}
var x = window.matchMedia("(max-width: 760px)")
myFunction(x) // Call listener function at run time
x.addListener(myFunction) // Attach listener function on state changes
...