admin管理员组

文章数量:1391975

I would like to load a the below javascript code to a JPanel or a JFrame. Is it possible?

<script language="javascript" type="text/javascript" charset="utf-8">
//javascript code
</script>

I would like to load a the below javascript code to a JPanel or a JFrame. Is it possible?

<script language="javascript" type="text/javascript" charset="utf-8">
//javascript code
</script>
Share Improve this question edited Mar 3, 2012 at 18:26 Eng.Fouad 118k74 gold badges324 silver badges427 bronze badges asked Mar 3, 2012 at 17:59 Jessy JamesonJessy Jameson 2072 gold badges6 silver badges15 bronze badges 1
  • The language attribute was deprecated in HTML 4. See the HTML 4 documentation. – Andrew Thompson Commented Mar 3, 2012 at 18:13
Add a ment  | 

3 Answers 3

Reset to default 3

You can use third-party libraries: such as HtmlUnit

It has fairly good JavaScript support (which is constantly improving) and is able to work even with quite plex AJAX libraries, simulating either Firefox or Internet Explorer depending on the configuration you want to use.

Example:

import .gargoylesoftware.htmlunit.BrowserVersion;
import .gargoylesoftware.htmlunit.WebClient;
import .gargoylesoftware.htmlunit.html.HtmlPage;

public class JavaScriptProgram
{
    private WebClient webClient;
    private HtmlPage currentPage;

    public JavaScriptProgram()
    {
        webClient = new WebClient(BrowserVersion.INTERNET_EXPLORER_8);
        webClient.setThrowExceptionOnScriptError(false);
        webClient.setJavaScriptEnabled(true);
    }

    public void visitPage(String url)
    {
        try
        {
            currentPage = (HtmlPage) webClient.getPage(url);
        }
        catch(Exception e)
        {
            // Cannot get the page
        }
    }

    public void executeJavaScript(String code)
    {
        currentPage.executeJavaScript(code);
    }

    public static void main(String[] args)
    {
        JavaScriptProgram p = new JavaScriptProgram();
        p.visitPage("http://www.stackoverflow.");
        p.executeJavaScript("document.write('Hello World!');");
    }
}

If you want browser capability within your Swing app, you could check Lobo, it supports Javascript too.

Swing ponents doesn't support Javascript codes natively. If you really need integrate Javascript and Java, you can try Rhino. But remember: it's javascript language only, you cannot use browser's API.

本文标签: javaLoad javascript within JFrame or JPanelStack Overflow