javascript 使有規律地重復的html 文段簡(jiǎn)化,減少下載時(shí)間。
javascript 能及時(shí)響應用戶(hù)的操作,對提交表單即使的檢查,無(wú)需浪費時(shí)間交由cgl 驗證。javascript 的特點(diǎn)是無(wú)窮無(wú)盡的,只要你有創(chuàng )意。
Javascript 加入網(wǎng)頁(yè)有兩種方法:1、直接加入HTML 文檔這是最常用的方法,大部分含有Javascript 的網(wǎng)頁(yè)都采用這種方法,如://-Javascript 結束-->在這個(gè)例子中,我們可看到一個(gè)新的標簽: 6767,而language="Javascript”> 用來(lái)告訴瀏覽器這是用Javascript 編寫(xiě)的程序,需要調動(dòng)相應的解釋程序進(jìn)行解釋。HTML 的注釋標簽:用來(lái)去掉瀏覽器所不能識別的Javascript 源代碼的,這對不支持 Javascript 語(yǔ)言的瀏覽器來(lái)說(shuō)是很有用的。
//-Javascript 結束:雙斜杠表示 Javascript 的注釋部分,即從//開(kāi)始到行尾的字符都被忽略。 至于程序中所用到的 document.write()函數則表示將括號中的文字輸出到窗口中去。
另外一點(diǎn)需要注意的是,6767的位置并不是固定的,可以包含在。
或。..中的任何地方。
2、引用方式如果已經(jīng)存在一個(gè)Javascript 源文件(以js 為擴展名),則可以采用這種引用的方式,以提高程序代碼的利用率。其基本格式如下:其中的Url 就是程序文件的地址。
同樣的,這樣的語(yǔ)句可以放在HTML 文檔頭部或主體的任何部分。 如果要實(shí)現“直接插入方式”中所舉例子的效果,可以首先創(chuàng )建一個(gè)Javascript源代碼文件“Script.js”,其內容如下:document.writeln("這是Javascript!采用直接插入的方法!");。
有時(shí)候因為需要,我們想在Java中調用js方法,不再是像頁(yè)面中一個(gè)事件觸發(fā),該如何做到呢?今天下午沒(méi)事得時(shí)候小研究了下,現跟大家分享一下。
不對之處,望大家指正,共同進(jìn)步![java] view plain copy/* * 加載腳本引擎,并在java中調用js方法 */ public void test2() { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName("JavaScript"); try { String str="2&1"; Double d = (Double) engine.eval(str); Integer i=d.intValue(); System.out.println(i); } catch (ScriptException ex) { ex.printStackTrace(); } } [java] view plain copy/* * 在java中調用js,jdk1.6中有加載js引擎類(lèi),然后由它來(lái)調用js方法。 * 并通過(guò)JDK平臺給script的方法中的形參賦值 */ public void test(String name) { ScriptEngineManager sem = new ScriptEngineManager(); /* *sem.getEngineByExtension(String extension)參數為js sem.getEngineByMimeType(String mimeType) 參數為application/javascript 或者text/javascript sem.getEngineByName(String shortName)參數為js或javascript或JavaScript */ ScriptEngine se = sem.getEngineByName("js"); try { String script = "function say(){ return 'hello,'"+name+"; }"; se.eval(script); Invocable inv2 = (Invocable) se; String res=(String)inv2.invokeFunction("say",name); System.out.println(res); } catch(Exception e) { e.printStackTrace(); } } [java] view plain copy/* * 演示如何將java中對象作為js中全局變量,同時(shí)演示將file類(lèi)賦給腳本語(yǔ)言,并獲得其屬性。
*/ public void testScriptVariables() { ScriptEngineManager sem=new ScriptEngineManager(); ScriptEngine engine=sem.getEngineByName("js"); File file=new File("c://1.txt"); engine.put("f", file); try { engine.eval("println('path:'+f.getPath())");//無(wú)法使用alert方法 } catch (ScriptException e) { e.printStackTrace(); } } [java] view plain copy/* * 演示如何在java中如何通過(guò)線(xiàn)程來(lái)啟動(dòng)一個(gè)js方法 */ public void testScriptInterface() throws ScriptException { ScriptEngineManager sem=new ScriptEngineManager(); ScriptEngine engine=sem.getEngineByName("js"); String script="var obj=new Object();obj.run=function(){println('test thread')}"; engine.eval(script); Object obj=engine.get("obj");//獲取js中對象 Invocable inv=(Invocable)engine; Runnable r=inv.getInterface(obj,Runnable.class); Thread t=new Thread(r); t.start(); } 這樣java就可以執行動(dòng)態(tài)語(yǔ)言了,不過(guò)注意是jdk1.6版本的哦~這樣寫(xiě)不知道你能不能看懂,這個(gè)問(wèn)題遠標java就已經(jīng)講過(guò)這個(gè)題目了,希望能幫到你。
區分干么?你要調用哪個(gè)文件里的功能或函數就直接用代碼調用就行了.如:
a.js中有一個(gè)功能ShowName()
b.js中有一個(gè)功能HelloMsg()
在文件中調用:
可能在另一個(gè)地方要調用第二個(gè)則用相同的方法:
是這樣的,在HEAD里寫(xiě)的是對JS的外部連接(文件連接,不然用不了那個(gè)文件里的代碼)
你再仔細看看BODY里的內容,肯定會(huì )有JS調用語(yǔ)句的,如果沒(méi)有,可能在那兩個(gè)JS里設置好了調用或就是直接實(shí)現功能的語(yǔ)句,而不是用函數形式提供的.JS調用的方式很多,有隱藏的有明顯的.
1、在jsp頁(yè)面的<head></head>;標簽里增加<script>;標簽調用js就行了,下面是示例:
<head>
<script type="text/javascript" language="javascript" src="/uploads/shbk/文件路徑/xx.js"></script>
<script type="text/javascript" language="javascript" src="/uploads/shbk/文件路徑/xxx.js"></script>
</head>
2、在jsp頁(yè)面的<body></body>;標簽里增加<script>;標簽調用js也可以,下面是示例:
<body>
<script type="text/javascript" language="javascript" src="/uploads/shbk/文件路徑/xx.js"></script>
<script type="text/javascript" language="javascript" src="/uploads/shbk/文件路徑/xxx.js"></script>
</body>
PS:需要調用多個(gè)js文件,就寫(xiě)多個(gè)<script>;標簽調用即可,調用的js文件不能是相同路徑下的同個(gè)文件。
下面是一個(gè)普通計算器的JS代碼,里面有html調用JS函數的方法,希望對你有幫助
<input type="text" name="x" /> <input type="text" name="fuhao" size="2" /> <input type="text" name="y" /> <input type="button" name="btn_test" value="運算" onclick="yunsuan()" />; 結果:<input type="text" name="jieguo" />
<script> function yunsuan() { var x = parseFloat(document.getElementsByName("x")[0].value); //獲取x輸入框的字符并且轉換為帶小數的數值型 var y = parseFloat(document.getElementsByName("y")[0].value); //獲取y輸入框的字符并且轉換為帶小數的數值型 var fuhao = document.getElementsByName("fuhao")[0].value; if (isNaN(x) || isNaN(y)) {//判斷輸入的字符是否是數字 alert("操作數請輸入數字!"); return false; } if (fuhao == "/" && y == 0) { alert("被除數不能為0"); return false; } var result = 0; switch (fuhao) { case "+": result = x + y; break; case "-": result = x - y; break; case "*": result = x * y; break; case "/": result = x / y; break; }
document.getElementsByName("jieguo")[0].value = result; } </script>
聲明:本網(wǎng)站尊重并保護知識產(chǎn)權,根據《信息網(wǎng)絡(luò )傳播權保護條例》,如果我們轉載的作品侵犯了您的權利,請在一個(gè)月內通知我們,我們會(huì )及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習?shū)B(niǎo). 頁(yè)面生成時(shí)間:3.106秒