本文目錄一覽:
求大家幫忙看下這段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())+”)
//順便說一下上面應是生成隨機顏色
原創文章,作者:MVZC,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/135430.html