2010-05-29 50 views
7

Nói chung ... Làm cách nào để thực hiện cuộc gọi trên một hàm của tệp tập lệnh java bên ngoài?Gọi chức năng của tập tin javascript bên ngoài

cụ thể hơn ...

  • Trong thẻ đầu tôi có

<script type="text/javascript" src="JScript/FontSize.js"></script>

  • Các bên ngoài tập tin javascript, (mà tôi muốn gọi) FontSize.js chứa các chức năng sau.

    function checkCookie() 
    
    function setCookie(c_name, value, expiredays) 
    
    function getCookie(c_name) 
    
    function increaseFontSize() 
    
    function decreaseFontSize()` 
    
  • Các FontSize.js nằm ở thư mục ~/Jscript/

Tôi đoán cơ thể trên tải nên chứa một cái gì đó giống như

<body onload="/JScript/Fontsize.js/checkCookie()">

Tất nhiên không có gì làm việc như nó nên bởi vì, tôi không biết làm thế nào để thực hiện cuộc gọi đến một chức năng để một tập tin js bên ngoài

Trả lời

13

Bạn chỉ cần gọi nó như thể nó là địa phương :)

<body onload="checkCookie()"> 

Hoặc, làm điều đó trong kịch bản:

window.onload = checkCookie; 

Khi bạn khai báo một hàm và nó không phải trong một đối tượng/namespace, đó là chỉ có sẵn trên toàn cầu và bạn có thể gọi nó như thể nó ngay trước mã hiện tại của bạn. Theo mặc định, các chức năng này sẽ nằm trên đối tượng window, you can see a short demo here.

Ví dụ (không quan trọng nơi xác định, bên ngoài hay không của chức năng này):

function myFunc() { alert('hi'); } 
myFunc(); 
window.myFunc(); //same call, unless there's *another* myFunc in a local-er scope 
+0

Với firebug tôi nhận được checkCookie không được định nghĩa lỗi – OrElse

+0

@strakastroukas - Bạn có chắc chắn tương đối đường dẫn đến tệp bên ngoài của bạn là chính xác, ví dụ: Xem -> Nguồn trang, nhấp vào liên kết của nó, nó có xuất hiện chính xác không? Đối với mã hiện tại của bạn, trang của bạn sẽ phải ở cấp '~/Page.htm'. –

+0

Đó là nó! Tôi đã chỉnh sửa nó thành (Đã thêm ../ vào đường dẫn) – OrElse

1
<html> 
     <head> 
      <script type="text/javascript" language="javascript" src="main.js"></script> 
     </head> 
     <body> 

    <!--The extranal main.js file contains samp() function.. --> 
      <script> 
       <!-- samp(); --> 
      </script> 
     </body> 
    </html> 
Các vấn đề liên quan