我希望将javascript代码更改为jquery代码,这是怎么回事?
在日期hourOffset
和3, 21
完成更改9, 22
。
DEMO: http://jsfiddle.net/zJRDC/
<script type="text/javascript">
var interval = self.setInterval("clock()", 1000);
function clock() {
var date = new Date();
var hourOffset = 3;
date.setUTCHours(date.getUTCHours(), date.getUTCMinutes());
var time = date.getTime();
date.setUTCFullYear(date.getUTCFullYear(), 3, 21);
var dstStart = date.getTime();
date.setUTCFullYear(date.getUTCFullYear(), 9, 22);
var dstEnd = date.getTime();
if (time > dstStart && time < dstEnd){ hourOffset = 4;}
date.setUTCHours(date.getUTCHours() + hourOffset, date.getUTCMinutes() + 30);
var output = date.getUTCHours() + ":" + date.getUTCMinutes() + ":" + date.getUTCSeconds();
document.getElementById("clock").innerHTML = output
}
</script>
<div id="clock"></div>
答案 0 :(得分:3)
jQuery可能只适用于其中一行:
document.getElementById("clock").innerHTML = output
使用jQuery可以
$("#clock").html(output);
使用$
查找元素,其中包含bug in getElementById
in earlier versions of IE的变通方法,然后使用html
方法在元素上设置标记(这非常像设置innerHTML
- 但是,在某些情况下,还有一些有问题的位的变通方法;它们可能不适用于这个特定的代码。)
请注意,jQuery只是一个用JavaScript编写的框架。它平滑了处理DOM的一些浏览器差异,并提供了许多方便的实用程序功能,但它不是与JavaScript分离的东西。您编写JavaScript代码,并且可以选择使用 jQuery(就像任何其他库一样)。
答案 1 :(得分:1)
如果您的代码有效。你真的不需要jquery。除非您想创建可重复使用的功能或自定义插件。
使用clock()作为jquery插件的快速示例(未测试)
(function( $ ){
$.fn.myClock = function(timeout) {
var interval = setInterval("clock()", timeout);
function clock() {
//..calculate date output
var output = //...
this.html(output)
}
};
})( jQuery );
然后使用你的插件
$(document).ready(function(){
$('#clock').myClock(1000);
}
请参阅Plugins/Authoring和learn-how-to-create-your-own-jquery-plugin
答案 2 :(得分:0)
JQuery已经完成了JavaScript。没有什么可以转换,因为JQuery不是一种语言;)。