簡體   English   中英

javascript代碼在運行后自行刪除

[英]javascript code remove itself after being run

我正在尋找一種方法,用JavaScript代碼填充數組表,然后刪除該代碼,以免用戶直接從頁面以HTML復制表(或至少使其變得困難)。

<script>
   ....
</script>

完成任務后如何從頁面中刪除Java腳本?

謝謝

我確實看不到刪除JavaScript的意義,但這是可能的。 給腳本元素一個ID,以使其易於選擇。 然后將將處理刪除的代碼放在單獨的腳本元素中。

鑒於您不想刪除的代碼不是異步的,可以使用以下方法:

<script id="foo">
    // Do your stuff here, create the table or whatever necessary
</script>

<script>
(function () {
    var node = document.getElementById("foo");
    if (node.parentNode) {
      node.parentNode.removeChild(node);
    }
})();
</script>

演示

更新:

正如Juhana在評論中指出的那樣,這將從DOM中刪除腳本元素,但是如果您查看頁面的實際來源,則腳本元素仍然可見。

您可以刪除腳本元素或執行其他任何操作,但是用戶仍然可以通過調試模式獲取表。 有一些方法可以加密您的源代碼,請嘗試: http : //jsobfuscate.com/

可能是通過禁用網頁中的復制和粘貼功能來使其變得困難

<script type="text/JavaScript">
function killCopy(e){
return false
}
function reEnable(){
return true
}
document.onselectstart=new Function ("return false")
if (window.sidebar){
document.onmousedown=killCopy
document.onclick=reEnable
}
</script>

參見http://www.boogiejack.com/no_copy_paste.html

但是用戶仍然可以獲取它,因為他們已經在本地計算機上擁有html的副本

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM