コンソールにデータを記録すると、このコードは正常に機能しますが、setIntervalにない場合は機能しますが、何らかの理由でjQueryセレクターは機能しません。
var refreshId = setInterval(function() {
if ($('body').width()<=979) {
console.log('small');
$('.switch-type').attr('data-type', 'vertical');
} else {
$('.switch-type').attr('data-type', 'horizonal');
console.log('big');
}
}, 1000);
アップデート:
コードは正常に機能します。これが実行されるまでに、jQuerymobileがすでに実行していると考えられているだけです。