2011-07-06 55 views
-2

我有以下代碼評估和演示已經加載腳本標籤

<html> 
     <head> 
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
      <title></title> 
      <script type='text/javascript' src="js.js" id="scripter"></script> 
    </head> 
    <body> 
<button>AGAIN</button> 
    </body> 
    </html> 

附帶的JS有作爲集whichg被儘快執行的頁面加載語句。 *注意:它不包含任何函數,並且不想包含任何函數。

點擊再次按鈕後,我想再次評估整個腳本。任何可能的方式,這可以做?

嘗試獲取包含腳本的腳本內容,以便我可以對其進行評估。 這可以實現的任何可能的方式?

其他一些方法實現相同?

謝謝。

對於這樣的人來說:我知道那些函數是用來做什麼的,因此特別指定了註釋。也許我應該直接提出問題的後半部分而不提供太多細節。我可以訪問包含在頁面中的腳本內容嗎?

+4

爲什麼不*只是使用函數?這正是他們想要的,可重複的代碼。 – deceze

+0

我知道這些是什麼功能,因此特別指定說明。也許我應該直接問問題的後半部分,而不要提供太多的細節。我可以訪問包含在頁面中的腳本內容嗎? – Zaje

回答

0

它可以通過屬性設置<script>src相同的與像

scriptTag.src = scriptTag.src + "?r=" + Math.random(); 

隨機GET變量,這將導致瀏覽器重新加載整個文件來實現,這通常不是一個好主意,但是這怎麼可能做到

0

我不知道有多大你那JS文件,但是 - 如果可能的 - 你可以寫一個文件

$someVariable = ' Whole Javascript code in quotes'; 

只要你想再次運行代碼,只需調用eval($ someVariable)即可。

現在你可能對我有個問題。它是如何在第一次運行。 只需在JS文件的末尾添加以下行。

eval($someVariable);