Ruby
→ Как избавиться от дубликатов css/js, как перенести скрипты в низ страницы? • 13 января 2012 г. 15:40
Для того, чтобы переместить все скрипты в низ страницы перед тэгом </body> но, при этом их отображение на странице должно оставаться в прежнем месте, нужно сделать следующее. Предположим, у нас имеется два скрипта в разных местах:<script src="/javascripts/jscripts1.js" type=&qu...
Для того, чтобы переместить все скрипты в низ страницы перед тэгом </body> но, при этом их отображение на странице должно оставаться в прежнем месте, нужно сделать следующее. Предположим, у нас имеется два скрипта в разных местах:
<script src="/javascripts/jscripts1.js" type="text/javascript"></script>
<script src="/javascripts/scripts2.js" type="text/javascript"></script>
Заменяем эти строки на пустые блоки и назначаем каждому параметру block свой идентификатор, в данном случае, это block1 и block2:
<div id="script_block1" class="script_block1"></div>
<div id="script_block2" class="script_block2"></div>
Дальше, в низу страницы, перед тэгом </body> прописываем следующее, присвоив параметру ad соответсвующий ему идентификатор, в данно случае это, ad1 и ad2:
<div id="script_ad1" class="script_ad1" style="display:none;"><!–в этом месте подключаем скрипт–>
<script src="/javascripts/jscripts1.js" type="text/javascript"></script>
</div>
<div id="script_ad2" class="script_ad2" style="display:none;">
<script src="/javascripts/jscripts2.js" type="text/javascript"></script>
</div>
<script type="text/javascript">
//перемещаем наш первый скрипт в реальную позицию отображения
document.getElementById('script_block1').appendChild(document.getElementById('script_ad1'));
//отображаем содержимое первого скрипта
document.getElementById('script_ad1').style.display = 'block1';
//перемещаем наш второй скрипт в реальную позицию отображения
document.getElementById('script_block2').appendChild(document.getElementById('script_ad2'));
//отображаем содержимое второго скрипта
document.getElementById('script_ad2').style.display = 'block2';
</script>
Все! Таким образом, сами скрипты будут грузиться в последнюю очередь, при этом, их отображение будет находиться в нужном месте страницы. Этим способом можно подключать, как внешние, так и внутренние скрипты.
Ruby
→ Как избавиться от дубликатов css/js, как перенести скрипты в низ страницы? • 13 января 2012 г. 15:33
Для того, чтобы переместить все скрипты в низ страницы перед тэгом </body> но, при этом их отображение на странице должно оставаться в прежнем месте, нужно сделать следующее. Предположим, у нас имеется два скрипта в разных местах:<script src="/javascripts/jscripts1.js" type=&qu...
Для того, чтобы переместить все скрипты в низ страницы перед тэгом </body> но, при этом их отображение на странице должно оставаться в прежнем месте, нужно сделать следующее. Предположим, у нас имеется два скрипта в разных местах:
<script src="/javascripts/jscripts1.js" type="text/javascript"></script>
<script src="/javascripts/scripts2.js" type="text/javascript"></script>
Заменяем эти строки на пустые блоки и назначаем каждому параметру block свой идентификатор, в данном случае, это block1 и block2:
<div id="script_block1" class="script_block1"></div>
<div id="script_block2" class="script_block2"></div>
Дальше, в низу страницы, перед тэгом </body> прописываем следующее, присвоив параметру ad соответсвующий ему идентификатор, в данно случае это, ad1 и ad2:
<div id="script_ad1" class="script_ad1" style="display:none;"><!–в этом месте подключаем скрипт–>
<script src="/javascripts/jscripts1.js" type="text/javascript"></script>
</div>
<div id="script_ad2" class="script_ad2" style="display:none;">
<div id="script_block2" class="script_block2"></div>
</div>
<script type="text/javascript">
//перемещаем наш первый скрипт в реальную позицию отображения
document.getElementById('script_block1').appendChild(document.getElementById('script_ad1'));
//отображаем содержимое первого скрипта
document.getElementById('script_ad1').style.display = 'block1';
//перемещаем наш второй скрипт в реальную позицию отображения
document.getElementById('script_block2').appendChild(document.getElementById('script_ad2'));
//отображаем содержимое второго скрипта
document.getElementById('script_ad2').style.display = 'block2';
</script>
Все! Таким образом, сами скрипты будут грузиться в последнюю очередь, при этом, их отображение будет находиться в нужном месте страницы. Этим способом можно подключать, как внешние, так и внутренние скрипты.