문제

JavaScript에서 Java 애플릿으로 함수/콜백을 전달할 수 있습니까?

예를 들어, 누르면 눌린 버튼이있는 애플릿이 있습니다.

function onCommand() {
  alert('Button pressed from applet');
}
applet.onCommand(onCommand);
도움이 되었습니까?

해결책

나는 바닥의 반사 예에서 파생 된 것을 사용하는 경향이 있습니다. 이 페이지, 그런 다음, 당신은 그것을 컴파일하기 위해 클래스 경로와 혼란할 필요가 없습니다.

그런 다음 Applet과 JavaScript 사이에 JSON 줄을 통과합니다.

다른 팁

당신이 사용할 수있는 jsobject Java에서 JavaScript로 다시 전화하십시오.

그 페이지에서 :

import netscape.javascript.*;
import java.applet.*;
import java.awt.*;
class MyApplet extends Applet {
     public void init() {
         JSObject win = JSObject.getWindow(this);
         JSObject doc = (JSObject) win.getMember("document");
         JSObject loc = (JSObject) doc.getMember("location");

         String s = (String) loc.getMember("href");  // document.location.href
         win.call("f", null);                      // Call f() in HTML page
     }
}

추신. jsobject를 사용하려면 애플릿 HTML 태그에 "mayscript"태그를 포함해야 할 수도 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top