本文目录一览:
求大家帮忙看下这段JS代码的大概意思
挺长的,简单帮你分析一下
取得跳转的URL
var jumpurl=$("#jumpurl").text();
检测cookie中“showdiv”的标志位,如果为空,就设置成当前时间,如果已经存在,
判断是否已经超过24小时,如果超过则将“showdiv”置空
if(getck("showdiv") == "")
{
var data = new Date();
var timestr = data.getFullYear() + "-" + (Number(data.getMonth())+1) + "-" + data.getDate() + " " + data.getHours() + ":" + data.getMinutes() + ":" + data.getSeconds();
document.cookie="showdiv=" + timestr;
}
else
{
var date_ = convertdate(getck("showdiv"));
var data = new Date();
var num = Number(data.getTime()) - Number(date_.getTime());
if(num = 24*3600000)//已经过期重新设置
{
document.cookie="showdiv=";
}
}
给按钮“closebtn”添加点击事件,该控件被点击时,设置cookie值“isshow=true”,
同时使用淡出效果来隐藏“full_scroll”控件,并给“add_fav”控件添加点击事件,
该控件被点击时打开“jumpurl”定义的?URL,同时设置cookie值“isshow=true”,
同时使用淡出效果来隐藏“full_scroll”控件
$("#closebtn").click(function(){
document.cookie="isshow=true";
$("#full_scroll").fadeOut("slow");});
$("#add_fav").click(function(){
window.open(jumpurl);
document.cookie="isshow=true";
$("#full_scroll").fadeOut("slow");
});
给“welcome_img”控件添加点击事件,该控件被点击时,设置cookie“isshow=true”,
同时使用淡出效果来隐藏“full_scroll”控件
$("#welcome_img").click(function(){
window.open(jumpurl);
document.cookie="isshow=true";
$("#full_scroll").fadeOut("slow");
});
等待1秒后执行showdiv函数
setTimeout("showdiv()",1000); //这里修改打开网页多久之后显示提示
以上部分是页面加载时执行的的全部代码,下面两个函数就不说了,应该可以看得清楚。
求js大神帮我看下我的代码为什么无法获取表单数据
var num1 = document.getElementById(a).value;
var num2 = document.getElementById(b).value;
改为:
var num1 = a.value;
var num2 = b.value;
即可。这是因为 loadHtml(wd1,idd1) 这里传入的wd1和idd1已经是对象,而不是id名,所以不需要再用getElementById方法来获取对象。
也可以这样来修改:
loadHtml(wd1,idd1)
改为
loadHtml('wd1','idd1')
而
var num1 = document.getElementById(a).value;
var num2 = document.getElementById(b).value;
保持不变,这样的话所传入的'wd1'和'idd1'就是id名了。
不过我推荐上述第一种方法。
求js代码解释
function accDiv(arg1, arg2) {
var t1 = 0, t2 = 0, r1, r2;
try {
//“split(".")[1]” 获取小数位
//“.length” 获取小数位长度
t1 = arg1.toString().split(".")[1].length;
} catch (e) {
//当没有小数位时 split(".") 只有1位,取下标[1]超出报错
//异常处理,保持默认值,即“0”位小数位
}
try {
t2 = arg2.toString().split(".")[1].length;
} catch (e) { } //同理
//声明 Math 域,域内涉及 Math 的方法或属性可以不写前缀
//这里只生效一句 pow(x, y)
//去掉该句,则加上前缀:Math.pow(x, y)
with (Math) {
//去掉被除数和除数小数点,并转为数值
r1 = Number(arg1.toString().replace(".", ""));
r2 = Number(arg2.toString().replace(".", ""));
//将商 乘以 10 的 (t2 - t1) 次幂[小数位差]
//例:
//1.2 / 0.05
//= 12 / 5 * pow(10, 2 - 1)
return (r1 / r2) * pow(10, t2 - t1);
}
}
请js大神帮我注释,想自学,详细点,谢谢!代码如下
很抱歉,图中的try catch我研究了一下,是有意义的,我已更改文中内容
如果看不清图片,就右键保存查看
话说你是从哪找的,这代码可以称得上是工业级的了ヽ(ー_ー)ノ
如果图片看不清,这是源代码:
/*函数后的(window, document);表示要执行这个函数。所以要求(window, document)前面必须是一个表达式,而 !正是这个作用。也就意味着这是自调用函数*/
! function (e, t, a) {//这的参数a可能已被弃用
function n() {
c(".love{width: 20px;height: 20px;position: fixed;background: #f00;transform: rotate(45deg);-webkit-transform: rotate(45deg);-moz-transform: rotate(45deg);}.love:after,.love:before{content: '';width: inherit;height: inherit;background: inherit;border-radius: 50%;-webkit-border-radius: 50%;-moz-border-radius: 50%;position: fixed;}.love:after{top: -10px;}.love:before{left: -10px;}"), o(), r()
//上面是调用c()并传入了一串css样式与过渡动画,并一起调用o()r()
}
function r() {
/*下面这个for就是遍历整个d,因为与执行代码写在了一行,所以省略{},后面的 ? : 为三元运算符 而后面大意为:判断绘画的图像是否透明,如果是,将其移除,如果不是再传入参数绘画*/
for (var e = 0; e d.length; e++) d[e].alpha = 0 ? (t.body.removeChild(d[e].el), d.splice(e, 1)) : (d[e].y--, d[e].scale += .004, d[e].alpha -= .013, d[e].el.style.cssText = "left:" + d[e].x + "px;top:" + d[e].y + "px;opacity:" + d[e].alpha + ";transform:scale(" + d[e].scale + "," + d[e].scale + ") rotate(45deg);background:" + d[e].color + ";z-index:99999");
requestAnimationFrame(r)
//requestAnimationFrame()是一个请求动画的API,而其中的 r 就是指调用r()
}
function o() {
//这里的=是赋值,==是判断,而是逻辑运算符,而typeof返回的是数据类型 注:这的e应指window对象
var t = "function" == typeof e.onclick e.onclick;
e.onclick = function (e) {
t t(), i(e)
}
}
//创建div并添加class为love,再向d中添加一串对象(用于r()的绘画)
function i(e) {
var a = t.createElement("div");
a.className = "love", d.push({
el: a,
x: e.clientX - 5,//注:这的e应指window对象
y: e.clientY - 5,
scale: 1,
alpha: 1,
color: s()
}), t.body.appendChild(a)//添加了a这个子节点
}
function c(e) {
var a = t.createElement("style");//简化代码
a.type = "text/css";
try {
a.appendChild(t.createTextNode(e)/*添加了一个内容为e的文本节点*/)//并作为a的子节点
} catch (t) {//这里的t纯属需要,无实意
a.styleSheet.cssText = e
}
//这的try catch语句意义为如果上文的e无法添加,则会将a.styleSheet.cssText赋值为e
t.getElementsByTagName("head")[0].appendChild(a)
//getElementsByTagName("head")[0].appendChild(a) 表在第一个head处添加子节点a
}
function s() {
return "#cc2a5d"//这只返回一个颜色=RGB(204,42,93)
}
var d = [];
//下面这个是对requestAnimationFrame方法进行了一个全面兼容 ||也是个逻辑运算符
e.requestAnimationFrame = function () {
return e.requestAnimationFrame || e.webkitRequestAnimationFrame || e.mozRequestAnimationFrame || e.oRequestAnimationFrame || e.msRequestAnimationFrame || function (e) {
setTimeout(e, 1e3 / 60)//这的e应指是window对象
}
}(), n()
}(window, document);//这的window对应参数e,document对应参数t
// rgb("+~~(255*Math.random())+","+~~(255*Math.random())+","+~~(255*Math.random())+")
//顺便说一下上面应是生成随机颜色