5

寻找像 swfobject 这样的 javascript 类来嵌入 java 并在用户没有 java 或拒绝安全提示时进行简单的回退。

谢谢,

乔什

4

4 回答 4

6

你可以很容易地建立一个。

像这样设置一个div:

<div id="java-applet">
Message to user saying that they need Java here
</div>

然后将Java 插件检测( builder ) 添加到您的 JavaScript。然后,如果返回 true,则执行以下操作:

document.getElementById("java-applet").innerHTML = "<applet>stuff here</applet>";
于 2009-07-26T17:31:14.903 回答
2

appletobject可能有效,但我没有使用它。

于 2009-07-24T20:40:21.633 回答
1

只需像往常一样嵌入小程序并在其中插入回退或插入 javascript 片段以删除对象: 除了参数之外,您还可以添加其他元素,例如带有文本的段落或调用某些函数的 javascript 来替换对象。

<script type="text/javascript">
  function replace_object(x) {
    $(x)...
  }
</script>
<object x="y" id="some_applet">
  <param name="y" value="z">
  <p>java not available. some alternative here. <!-- option 1 --></p>
  <script type="text/javascript">
    replace_object('some_applet'); // option 2
  </script>
</object>
于 2009-07-26T21:23:06.527 回答
0

这有帮助!

我在使用小程序从服务器端进行批处理文件下载时遇到了一个非常奇怪的问题。

Ajax 请求似乎与小程序请求冲突,小程序文件下载因某些套接字异常而中断。

小程序在 JRE5.0 下运行良好,可能是我们最近升级到 JRE6.0 造成的。

<div id="java-applet"></div>
<script>
    var t;
    function startApplet() {
        var attributes = {codebase:'<%=request.getContextPath()%>',
                          code:'<%=appletClass%>',
                          archive:'applet/SignedApplet.jar',
                          width:0, 
                          height:0} ;
        var parameters = {para1:'value1',
                          para2:'value2',
                          java_arguments:'-Xms64m -Xmx512m'
        } ;
        var version = '1.6' ;
        var buildAppletTag = function() {
            var tag = '<applet';
            for (var attribute in attributes){
                tag += (' ' + attribute + '="' + attributes[attribute] + '"');
            }
            tag += ">";
            for (var parameter in parameters){
                tag += '<param name="' + parameter + '" value="' + parameters[parameter] + '"/>';
            }   
            tag += '</applet>';
            return tag;
        };
        document.getElementById("java-applet").innerHTML = buildAppletTag(attributes, parameters, version);
        clearTimeout(t);
    }
    t = setTimeout("startApplet()", 1000); // delayed
</script>
于 2011-06-03T06:49:30.507 回答