2017-04-25 76 views
0

這個例子顯示瞭如何重定向到URL:如何導致頁面重定向到JavaScript片段?

<meta http-equiv="refresh" content="0; url=http://example.com/" />

但是,我不想重定向到一個網址,我想重定向到一個JavaScript代碼段:

javascript:(function(){s=document.createElement("script");s.type="text/javascript";s.src="https://www.diigo.com/javascripts/webtoolbar/diigolet_b_h_b.js";document.body.appendChild(s);})();

目標是用一個文件來做到這一點。

我試圖用我的js片段替換上面元重定向中的url,但它失敗。我相信這個問題是嵌入在JS的雙引號:

<meta http-equiv="refresh" content="0; url=javascript:(function(){s=document.createElement("script");s.type="text/javascript";s.src="https://www.diigo.com/javascripts/webtoolbar/diigolet_b_h_b.js";document.body.appendChild(s);})();" />

我試着用&quot;替換js的雙引號,但沒有奏效。也試過%22,也沒有工作。

我並不想使用的JavaScript重定向,我試圖重定向到的javascript(使用元或其他非JS方法)。但是,如果有一種方法可以使用另一個腳本來執行上述腳本,那很好。

沒有試圖重定向到.js 文件 - 我想在重定向中嵌入js代碼片段。

This question不是重複的,因爲他們沒有重定向頁面,他們重定向了一個鏈接。

+0

使用前爲什麼不叫喜歡並在此HTML頁面內調用您在document.ready事件上的JavaScript代碼片段或加載任何適合您的JavaScript代碼片段。 – NBaua

+0

@NBaua,因爲那時我需要2個文件才能完成。試圖用1個文件來完成。 Thx –

回答

0

我想你想加載js文件動態!如果是這樣..,這裏是我的代碼

(function(window, undefined){ 
//設置meta 禁止緩存 
document.write('<meta http-equiv="content-type" content="text/html; charset=GBK"><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache">'); 

//加載公共JS文件 
var jsFile = [ 
    CONTEXT_PATH_NAME+"/js/jquery-1.4.2.min.js", 
    CONTEXT_PATH_NAME+"/js/jquery.easyui.min.js", 
    CONTEXT_PATH_NAME+"/js/jquery.cookie.js", 
    CONTEXT_PATH_NAME+"/js/Toolbar.js", 
    CONTEXT_PATH_NAME+"/js/common.js", 
    CONTEXT_PATH_NAME+"/js/ajax-request.js", 
    CONTEXT_PATH_NAME+"/js/validator.js", 
    CONTEXT_PATH_NAME+"/js/tooltip_split.js", 
    CONTEXT_PATH_NAME+"/js/cattMsg.js", 
    CONTEXT_PATH_NAME+"/js/watermark.js", 
    CONTEXT_PATH_NAME+"/html/js/session.jsp" 
]; 
var jsTags = ""; 
for(var i in jsFile) { 
    jsTags += '<script type="text/javascript" src="' + jsFile[i] + '"></script>'; 
} 
document.write(jsTags); 
})(window); 
+0

我想你沒有仔細閱讀這個問題... –