Замена divs в зависимости от размера экрана

#jquery

#jquery

Вопрос:

Я работаю над адаптивным сайтом, хотя я не могу изменить HTML, только CSS и JS.

У меня есть сетка приспособлений, и когда размер экрана достигает 480 пикселей, я хочу переместить div ниже другого div.

Чтобы увидеть проблему, просмотрите эту демонстрацию, которую я настроил http://jsfiddle.net/FyXRU /

Мой код

 <div class="fixture">
    <div class="fixture-date">Date</div>

    <div class="teams">Teams</div>

    <div class="details">Detials</div>
</div>

<hr>

<div class="fixture">
    <div class="fixture-date">Date</div>

    <div class="teams">Teams</div>

    <div class="details">Detials</div>
</div>

<hr>

<div class="fixture">
    <div class="fixture-date">Date</div>

    <div class="teams">Teams</div>

    <div class="details">Detials</div>
</div>

<hr>

<div class="fixture">
    <div class="fixture-date">Date</div>

    <div class="teams">Teams</div>

    <div class="details">Detials</div>
</div>



$(window).resize(function() { //Fires when window is resized
    iTargetWidth = $(window).width();

    if (iTargetWidth < 770) { 
        $("div.fixture-date").insertAfter("div.teams");
    }
});
 

что мне нужно, так это перенос даты после команды div.

Любая помощь была бы отличной.

Комментарии:

1. Я не знаю ваш css-файл, но с помощью медиа-запросов вы можете перемещаться teams влево и fixture-date должны идти после float. Все это можно сделать только из css.

2. элементы будут иметь ширину 100%, так что это действительно не сработает

Ответ №1:

Попробуйте что-то вроде этого:

 $(window).resize(function() { //Fires when window is resized
    var width = (window.innerWidth > 0) ? window.innerWidth : screen.width;
    if(width <= 770) {
        $(".fixture").each(function() {
        var detach = $(this).find(".fixture-date").detach();
        $(detach).insertAfter($(this).find(".teams"));
        })
    }
});
 

пример

Комментарии:

1. Работает приятно. Обратите внимание на mate. Большое вам спасибо