Событие scroll. Не цепляется строка таблицы
Добрый день. Буду очень благодарен если кто то объяснит в чем проблема. Есть ХТМЛ код таблички
<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width"> <title>Табло аэропорта</title> <link href="styles/style.css" rel="stylesheet" type="text/css"> <script src="js/jquery-2.1.4.min.js"></script> <script src="js/myScript.js"></script> </head> <body> <div id="wrapper"> <form method='get'> <p><label>Вылет<label> <input type="checkbox" value="1" name="departure" id="departure"> </p> <p><label>Прилет<label> <input type="checkbox" value="2" name="landing" id="landing"> </p> </form> <div class="container"> <h2>Расписание рейсов аэропорта</h2> <table> <thead> <tr> <td>Тип рейса</td> <td>Номер рейса</td> <td>Авиакампания</td> <td>Логотип</td> <td>Тип воздушного судна</td> <td>Аэропорт назначения</td> <td>Плановое время вылета</td> <td>Плановое время прилета</td> <td>Статус рейса</td> <td>Примечания</td> </tr> <thead> <tbody> <tr> <td><img src="images/air.png" alt="Вылет" title="Вылет" width="20px"></td> <td>SU 2462</td> <td>Аэрофлот </td> <td><img src="images/aeroflot.jpg" alt="Аэрофлот" title="Аэрофлот" width="40px"></td> <td>Airbus А321</td> <td>Париж</td> <td>11:45</td> <td>14:05</td> <td>Вылетел</td> <td>-</td> </tr> <tr> <td><img src="images/landing.png" alt="Приземление" title="Приземление" width="20px"></td> <td>DL 1011</td> <td>Уральские авиалинии</td> <td><img src="images/ural.jpg" alt="Уральские авиалинии" title="Уральские авиалинии" width="40px"></td> <td>Boeing 777-300</td> <td>Шереметьево</td> <td>11:25</td> <td>23:10</td> <td>Отменен</td> <td>Погодные условия</td> </tr> <tr> <td><img src="images/landing.png" alt="Приземление" title="Приземление" width="20px"></td> <td>SU 1255</td> <td>S7</td> <td><img src="images/s7.jpg" alt="S7" title="S7" width="40px"></td> <td>Airbus А320</td> <td>Шереметьево</td> <td>9:45</td> <td>13:05</td> <td>Приземлился</td> <td>-</td> </tr> <tr> <td><img src="images/air.png" alt="Вылет" title="Вылет" width="20px"></td> <td>SU 2563</td> <td>Аэрофлот</td> <td><img src="images/aeroflot.jpg" alt="Аэрофлот" title="Аэрофлот" width="40px"></td> <td>Airbus А321</td> <td>Симферополь</td> <td>12:45</td> <td>15:05</td> <td>Задержан до 15:35</td> <td>Технические неполадки</td> </tr> <tr> <td><img src="images/landing.png" alt="Приземление" title="Приземление" width="20px"></td> <td>SU 2355</td> <td>Аэрофлот </td> <td><img src="images/aeroflot.jpg" alt="Аэрофлот" title="Аэрофлот" width="40px"></td> <td>Airbus А330</td> <td>Шереметьево</td> <td>12:15</td> <td>14:55</td> <td>По расписанию</td> <td>-</td> </tr> <tr> <td><img src="images/air.png" alt="Вылет" title="Вылет" width="20px"></td> <td>SU 2722</td> <td>Аэрофлот </td> <td><img src="images/aeroflot.jpg" alt="Аэрофлот" title="Аэрофлот" width="40px"></td> <td>Airbus А321</td> <td>Венеция</td> <td>11:45</td> <td>14:55</td> <td>Вылетел</td> <td>-</td> </tr> <tr> <td><img src="images/landing.png" alt="Приземление" title="Приземление" width="20px"></td> <td>DL 1016</td> <td>Уральские авиалинии</td> <td><img src="images/ural.jpg" alt="Уральские авиалинии" title="Уральские авиалинии" width="40px"></td> <td>Boeing 777-300</td> <td>Шереметьево</td> <td>11:25</td> <td>23:10</td> <td>Отменен</td> <td>Погодные условия</td> </tr> <tr> <td><img src="images/landing.png" alt="Приземление" title="Приземление" width="20px"></td> <td>SU 1255</td> <td>S7</td> <td><img src="images/s7.jpg" alt="S7" title="S7" width="40px"></td> <td>Airbus А320</td> <td>Шереметьево</td> <td>9:45</td> <td>13:05</td> <td>Приземлился</td> <td>-</td> </tr> </tbody> </table> </div> </div> </body> </html> Стили к нему Код:
html, body, div, span, applet, object, iframe, $(document).ready(function(){ $(window).scroll(function(){ var scroll = $(window).scrollTop(); var first = $('table tr:first'); if(scroll > 50){ $('.container h2').css({'top':$(document).scrollTop() - 50}); first.css({'top':$(document).scrollTop() - 50}); } else{ $('.container h2').offset({top:49}); //вернули элементу изначальный top first.offset({top:100}); } }); } Так вот заголовок h2 отлично прикрепляется к верху страницы и остается там при прокрутке во всех браузерах. А первая строка таблицы ведет себя таким же образом только в firefox, в других браузерах ее не видно. Подскажите в чем проблема и как этом ожно решить |
Во первых, можно было бы выложить это еще это в виде архива.
Во вторых, не совсем понятно что вам нужно. А в третьих,я прогнал у себя, и не увидел никакого "Прикрепления" h2. "Правильно поставленный вопрос, имеет в себе 50% ответа." Народная мудрость. Возможно вы имели ввиду параметр "fixed" у свойства "position" ?! Иначе не понятно совершенно о чем вы. Также стоит указать что вы работаете не с чистым JS а с библиотекой JQuery. |
Разобрался в вашей проблеме.
Цитата:
P.S.Не надо использовать JS там, где можно обойтись CSS. http://stackoverflow.com/questions/1...an-html5-table |
Цитата:
зафиксировать заголовок таблицы только с помощью css ? |
Цитата:
|
nurik_6,
спасибо, но ещё раз повторю: на одном css так заголовок не зафиксировать , поэтому там и используется Jquery. |
Не знал что здесь в архиве можно выложить. В следующий раз так поступлю. По ссылке лучше всего подошел вариант от josef спасибо
|
Буду благодарен если посмотрите эту тему. Там я приложил весь архив http://javascript.ru/forum/showthrea...757#post379757
|
Часовой пояс GMT +3, время: 23:00. |