Я работаю с jquery и несколькими сценариями, которые требуют правильного функционирования JavaScript в документе HTML (thankyou web 2.0). Я использую ajax для публикации, $(document).ready
для запуска функций и других событий и т. Д. Я использую googles minify, чтобы помочь время загрузки внешних файлов javascript, необходимых для запуска javascript в HTML. У меня также возникла проблема с структурированием/форматированием моего javascript.Свернуть javascript-код в html
Мои вопросы заключаются в следующем:
- Как минимизировать код в HTML-документе?
- Возможно ли связать javascript в документе HTML извне , даже если для этого требуется
$(document).ready
, как в моем примере ниже? - Что такое хороший сайт или учебник, чтобы помочь мне правильно форматировать мой jquery/javascript, поскольку я хорошо знаю, что это неверно, и помогает ли это время загрузки?
Ниже приведен пример страницы, на которой я запускаю несколько сценариев (не стесняйтесь отформатировать их правильно) и пример того, что я хотел бы правильно связать извне и структуру. Я не прошу кого-либо сделать мою работу для меня, а просто просто привести меня в правильном направлении.
<script type="text/javascript" src="lib/js/jquery.nivo.slider.js"></script>
<script type="text/javascript" src="lib/js/jquery.fancybox.js"></script>
<script type="text/javascript" src="lib/js/jquery.jcarousel.min.js"></script>
<script type="text/javascript">
//nivo
$(window).load(function() {
$('#slider').nivoSlider({ effect: 'slideInLeft', pauseTime: 5000 });
});
//fancybox
$(document).ready(function() {
$('.fancybox').fancybox();
$.fancybox.open($("#welcome"), { padding : 0 });
});
//subscribe
$("#footer-subscribe-show-hide").click(function() {
$("#footer-subscribe").animate({width:'toggle'},300);
$(this).show("#subscribe");
});
//responsive
$(function() {
$('.menu-mobile-drop').click(function() {
$('.menu-mobile').toggle();
});
});
$(".menu-wrap").click(function() {
$(this).find('img').toggle();
});
//subscriptionAjax
$("#subscriber").submit(function(event) {
event.preventDefault();
$("#footer-subscribe").fadeOut();
var values = $(this).serialize();
$.ajax({
url: "include/subscribe.php",
type: "post",
data: values,
success: function(){
$("#footer-subscribe")
.html(
"<div class='subscription-success'>You're now subscribed!</div>"
)
.fadeIn('slow');
},
error: function(){
alert("failure");
$("#footer-subscribe").html('there is error while submit');
}
});
});
//jcarousel
function mycarousel_initCallback(carousel) {
carousel.clip.hover(function() {
carousel.stopAuto();
},
function() {
carousel.startAuto();
});
};
jQuery(document).ready(function() {
jQuery('#mycarousel').jcarousel({
auto: 8,
wrap: 'last',
initCallback: mycarousel_initCallback
});
});
</script>
Ответ на вопрос 2: "да", которые должны в значительной степени решить остальные. – JJJ
Единственное, что необходимо, это ''. Кроме того, весь ваш код JavaScript не обязательно должен находиться в вашем файле HTML. – putvande
Что касается форматирования вашего javascript, этот учебник помог мне значительно упорядочить мой код. http://www.adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html – JeffRegan