我正在使用 jquery 和多个脚本,这些脚本需要 HTML 文档中的 javascript 才能正常运行(感谢 web 2.0)。我正在使用 ajax 发布、$(document).ready
运行函数和其他多个事件等。我正在使用谷歌缩小来帮助加载在 HTML 中运行 javascript 所需的外部 javascript 文件的加载时间。我也无法构建/格式化我的 javascript。
我的问题如下:
- 如何最小化 HTML 文档中的代码?
- 即使需要
$(document).ready
,是否可以将 HTML 文档中的 javascript 链接到外部,如下面的示例? - 有什么好的网站或教程可以帮助我正确格式化我的 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>