本文目錄一覽:
關於一段js代碼的幾個問題
據我了解,這段代碼應該是微軟專用的,可以在 IE 中設置默認主頁。也就是說,以上CSS 的 behavior 和 JavaScript 的 setHomePage() 是 IE 的私有語法,他們應該是在 IE5 中引入的,新版本的 IE 仍然支持,不過其他非 IE 內核瀏覽器是不支持的。
1. return(false) 是為了阻止瀏覽器的默認行為。比如說,a 的默認行為是產生超鏈接,單擊後影響瀏覽器的地址欄進行跳轉 ,還有 form 中的 button,默認行為是單擊後提交表單,那麼在 a 或 button 的 onclick 事件函數中 return(false) 就可以阻止這種行為,這樣就可以自定義某些功能了。
2. setHomePage(url) 是設置默認主頁的,url=你要設置的頁面地址。這是為 IE 專門設置的一個方法。
3.behavior 也是專用於 IE 的,就是藉助 CSS 樣式向 HTML 添加代碼,從而產生在 IE 中的某種瀏覽器效果,“#default#homepage”表示設置默認主頁效果。
4. 將 onclick 的代碼寫在函數中會好一些,比如說 onclick=“function(){ /*代碼放在函數裡面*/ }”,還有,setHomePage(url) 的 url 應當是整的網址,要有協議頭,如“http://”。
關於你說的 this.style.behavior 對 DOM 對象產生的影響問題,我來解釋一下:
1. this 指是的當前調用事件函數(如 onclick )的文檔對象,如 a onclick=”this.setHomePage(‘……’)” , this 就是對象 a 的引用(或者說就是這個 a);
2. 而 obj.style 是對文檔對象中 style 屬性的引用,比如上面的例子中,寫了 this.style.behavior=’url(#default#homepage}’,就相當於 a style=“behavior:url(#default#homepage)”。
如果你想詳細了解,可以看有關 HTML DOM 和 CSS in JavaScript 的資料。另外,IE 的專有語法可能與 Web 標準語法的實現機理不同,所以不用深究。
—————————————————————————————–
你要的那種“枚舉”功能,實際上就是用 for-in 循環實現的,比如說要查看 window 對象的屬性:
for(prop in window){
document.write(prop+”:”+window[prop]);
}
還有,之前已經說過,this.style 操作的是對象的樣式(或者說是 CSS),this.style.behavior 指向的就是 behavior 這個 CSS 屬性,這個屬性只有 IE 可以完全識別。而 setHomePage() 是微軟在 IE 實現的 DOM 中為對象額外定義的一個方法。這兩者沒有直接聯繫,也不存在“先有誰,後有誰”的問題,只是配合起來,可以在 IE 上實現添加默認主頁的對話框而已。
怎麼防止網站代碼被別人另存為?
1、禁示查看源代碼 從”查看”菜單下的”源文件”中同樣可以看到源代碼,下面我們就來解決這個問題: 其實這隻要使用一個含有frame/frame標記的網頁便可以達到目的。 frameset frame src=”你要保密的文件的URL” /frameset 這樣當有人使用”查看”下的”源文件”的時候,看到的將是上面的那段代碼,而你真正的文件又躲過一劫。 2、禁止右鍵 body oncontextmenu=”window.event.returnValue=false” onkeypress=”window.event.returnValue=false” onkeydown=”window.event.returnValue=false” onkeyup=”window.event.returnValue=false” ondragstart=”window.event.returnValue=false” onselectstart=”event.returnValue=false” /body 3、禁示另存為 通過上面的兩步好像你的源代碼已經安全了,但別忘了,別人還可以將你的頁面保存下來,再慢慢分析。不過別擔心,下面我們來解決這個問題。 在你要保密的網頁中加入以下代碼: noscript iframe src=”*.htm”/iframe /noscript 現在如果有人想保存你的網頁,等他保存到一部分的時候IE就會幫你告訴他,無法保存該WEB頁,並將己保存的那部分文件刪除。 noscriptiframe src=*/iframe/noscript 放在BODY/BODY之間 加了上面的代碼後,文件是不可以另存,但是改變存儲的屬性,比如改存文本格式頁面就可以另存了 [-關於保護-] 先通過代碼來禁止IE的一些操作 :禁止另存為 NOSCRIPTIFRAME SRC=*.html/IFRAME/NOSCRIPT :取消選取、防止複製 不準粘貼 防止複製 BODY bgColor=#ffffff leftMargin=0 topMargin=0 :禁止右鍵 SCRIPT language=JavaScript !– if (window.Event) document.captureEvents(Event.MOUSEUP); function nocontextmenu() { event.cancelBubble = true event.returnValue = false; return false; } function norightclick(e) { if (window.Event) { if (e.which == 2 || e.which == 3) return false; } else if (event.button == 2 || event.button == 3) { event.cancelBubble = true event.returnValue = false; return false; } } document.oncontextmenu = nocontextmenu; // for IE5+ document.onmousedown = norightclick; // for all others //– /SCRIPT :狀態欄固定 body bgcolor=”#fef4d9″ 後台/網站屬性/開啟新聞版權保護功能 :禁止緩存 在頁面中使用HTML標記,如下面: HEAD META http-equiv=Pragma content=no-cache META http-equiv=Cache-Control content=no-cache META http-equiv=Expires content=0 -利用上面的代碼可以禁止下面幾種手段- 1:右鍵 – 查看原文件 3:文件 – 另存為 4:IE緩存 -用代碼本身很難禁止下面的手段我門就迷惑的方法阻止調出原代碼- 2:查看 – 原文件 5:還可以通過代碼提取 URL欺騙(可以隱藏真實地址) 教程代碼: meta http-equiv=”refresh” content=”0;url=’ http://東邪.明天畢竟又是新的一天@ ’” 注意代碼中url=’ http://東邪.明天畢竟又是新的一天@ ’” @ 符號前面的[ http://東邪.明天畢竟又是新的一天]就是欺騙後在IE中出現的效果 也可以是 後面的不用說就是連接的真實地址 URL迷惑 meta http-equiv=”refresh” content=”0;url=’http://東邪.明天畢竟又是新的一天@.htm’” 注意這一段和上面的有什麼不同對就是.htm 那.htm是什麼呢呵呵其實就是真實地址 怎麼訪問呢 有.htm嗎?呵呵我門要做的就就做一個沒有名字的HTM 方法很簡單先創建個XXX.htm 上傳到 QQ網絡硬盤 雙激文件名將XXX刪除 怎麼樣.htm出來了吧,這樣就算得到原代碼很難看出真實地址. 列1:http://東邪.明天畢竟又是新的一天@.htm 列2: 呵呵很難看出真實地址是什麼吧 [JS禁止 用IE – 查看 – 原文件] 也是迷惑的方法 但是可以絕對禁止以上面的方式調用原文件 要用到JS 教程JS代碼 var oPopup = window.createPopup(); var popTop=50; function popmsg(msgstr) { var winstr=”table style=/”border: 1 solid #000000/” width=/”241/” height=/”172/” border=/”0/” cellpadding=/”0/” cellspacing=/”0/””; winstr+=”trtd height=/”150/”/tdtd align=/”center/”table width=/”90%/” height=/”110/” border=/”0/” cellpadding=/”0/” cellspacing=/”0/””; winstr+=”trtd valign=/”top/” style=/”font-size:12px; color: #F00000; face: Tahoma/””+msgstr+”/td/tr/table/td/tr/table”; oPopup.document.body.innerHTML = winstr; popshow(); } function popshow() { window.status=popTop; if(popTop1720){ clearTimeout(mytime); oPopup.hide(); return; } else if(popTop1520popTop1720) { oPopup.show(screen.width-250,screen.height,241,1720-popTop); } else if(popTop1500popTop1520) { oPopup.show(screen.width-250,screen.height+(popTop-1720),241,172); } else if(popTop180) { oPopup.show(screen.width-250,screen.height,241,popTop); } else if(popTop220) { oPopup.show(screen.width-250,screen.height-popTop,241,172); } popTop+=10000; var mytime=setTimeout(“popshow();”,1); } popmsg(” “); 另存為 17789897.js HTM調用JS代碼 SCRIPT language=javascript src=”17789897.js”/SCRIPT 呵呵有寫朋友可能熟悉但是我要告訴你他現在的作用是禁止同過 [IE – 查看 – 原文件] 區別在這段代碼 popTop+=10000; var mytime=setTimeout(“popshow();”,1); 看到了嗎?速度是10000 不用我說也知道是什麼意思了吧 把上面JS和HTM調用JS代碼 加到網頁里就可以禁止 [IE – 查看 – 原文件] 關於保護我知道的就這些. [-關於加密-] 我建議重要的代碼採用複合加密 方式基本上有以下幾種 JS編碼 escape加密 8進制轉義字符串 16進制轉義字符串 10進制HTML編碼如下 16進制HTML編碼如下 都可以用script !– document.write(unescape(“加密後的代碼”)); //– /script 由於他門的代碼很大還有JS文件我就不給了 大家可以去baidu.com搜索 [-關於破解-] 正所謂魔高一尺,道高一丈,再複雜的加密,在多的迷惑,還是要用IE來解碼 給大家個超級技巧 在地址欄或按Ctrl+O,輸入: javascript:s=document.documentElement.outerHTML;document.write(body/body’);document.body.innerText=s; 源代碼就出來了。不論加密如何複雜,最終都要還原成瀏覽器可以解析的html代碼,而documentElement.outerHTML正是最終的結果. 經常在網上逛的朋友,一定有看到漂亮的圖片就想保存;看到漂亮的頁面就忍不住要瞅瞅源代碼的情況,可惜有些網友用javascript小程序禁止了鼠標右鍵功能,使我們無法保存和查看。那麼,如何才能禁止鼠標右鍵功能,又如何解除呢? 給你的網頁添加禁止鼠標右鍵的功能 其實這只是利用JavaScript實現的一個很簡單的鎖住鼠標右鍵的功能,我們只需將下面一段程序,加到你的網頁上就可以了。其中的文字部分“對不起……”你可以隨意替換為你喜歡的文字,就可以了。 〈SCRIPT language=javascript〉function click(){if(event.button==2){alert('對不起,你的右鍵功能在這裡不能使用')}}document.onmousedown=click〈/SCRIPT〉 這樣就可以禁止右鍵功能了。當在你的網頁點擊右鍵時,會彈出一個含有確定按鈕的文字窗口。 如何破解禁止鼠標右鍵的功能 同樣也很簡單就能使禁止鼠標右鍵功能失效,具體做法有兩種: 一是首先在頁面目標上按下鼠標右鍵,彈出窗口,這時不要鬆開右鍵。接着將鼠標移到窗口的確定按鈕上,同時按下左鍵。好了,現在鬆開鼠標左鍵,這時窗口消失。最後,再將鼠標移到目標上鬆開鼠標右鍵。好了,你想要的功能全出來了。你就又可以拷貝,或者用新窗口打開聯接了。 二是對一點鼠標右鍵就出現添加到收藏夾窗口的網頁,用上述方法不能破解,因為你用鼠標左鍵點取消的同時就失去了右鍵的目標的交點,我們用另外一種方法制服它:首先還是在目標上點鼠標右鍵,出現添加到收藏夾的窗口,這時不要鬆開右鍵,也不要移動鼠標。接着使用鍵盤的Tab鍵,移動焦點到取消按鈕上。按下空格鍵,窗口消失。最後鬆開右鍵,好了,你要的功能全出來了。
js如何使用?
1,我們在使用JavaScript代碼有兩種寫法:一種是在HTML頁面中直接嵌入js代碼,另一種是通過鏈接外部的JavaScript文件。
2,在HTML頁面中直接嵌入js代碼
3,如果在HTML頁面中直接嵌入JavaScript代碼,我們需要使用 script 標籤,script 和 /script 會告訴 JavaScript 在何處開始和結束。
4,script
alert(“My First JavaScript”);
/script
5,在HTML頁面的任何位置(head部分 body部分 body的後面 較好)都可以插入script標籤。
6,第二種用法:通過鏈接外部的JavaScript文件。
7,首先我們建立一個JavaScript文件,擴展名是.js
然後將要編寫的js代碼寫到Js文件中,並保存文件。使用script標籤將JavaScript文件鏈接到HTML文件中
iOS代碼加密的幾種方式
對ios應用加固有兩種實現方式。
一種使用安全編譯器
基於LLVM編譯器中間層實現。基於 LLVM 的保護方案,在使用時需要更換已有的編譯環境,替換編譯器,調整編譯選項等,對開發環境造成了很多影響,易用性差。從保護效果上看,基於 LLVM 的保護方案,受限於編譯器框架,生成的代碼只能做邏輯上的混淆變換,仍然可以被反編譯,對控制流的混淆效果有限,且邊界清晰,更容易被分析。
反編譯效果
OLLVM 保護後反編譯效果:
一種使用VirboxProtector 虛擬化保護。
ARM 虛擬化是 Virbox Protector 針對 ARM 架構的指令推出的虛擬機保護方式,通過將原始的 ARM 指令進行翻譯,轉換為自定義的虛擬機指令,運行時在自定義虛擬機執行。Virbox Protector 實現了針對 ARM 指令的虛擬機保護工具,支持對armv7(包括 thumb, thumb2),及 armv8 以上指令集進行翻譯,安全強度高,適用於需要高安全性的代碼保護需求。通過虛擬化保護後的代碼無法被反編譯。
Virbox Protector 保護後反編譯效果:
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/235980.html