0

根据另一个问题,您可以使用以下代码查看您的皮肤:

<applet code="net.minecraft.skintest.ModelPreviewApplet"
        archive="http://www.minecraft.net/skin/skintest.jar" codebase="."
        width="320" height="320">
    <param name="name" value="535" />
</applet>

哪个有效!

但是有谁知道我如何制作一个文本框和一个将书面文本放入value="535"标签的按钮(用文本框输入替换“535”)?

链接到另一个问题:是否有可嵌入网络的皮肤预览应用程序?

4

2 回答 2

0

这应该很容易,但我认为它不会做你想做的事。

我假设您想要一个带有纹理预览的预览窗口,并允许用户输入新的纹理 ID,按下按钮,然后立即查看预览。

仅在页面加载后更改的值param不会实现这一点。

当按钮被按下时,您需要删除applet并使用新的参数值重新创建它,以使更改生效。

这是您要求的代码:

<applet
        code="net.minecraft.skintest.ModelPreviewApplet"
        archive="http://www.minecraft.net/skin/skintest.jar" codebase="."
        width="320"
        height="320">
    <param name="name" id="previewName" value="535" />
</applet>

<input type="text" id="newValue" />

<script>
document.getElementById('newValue').onblur = function(event) {
    // grab value
    var iVal = parseInt(this.value);
    if(!iVal && iVal !== 0) return;

    // update param
    document.getElementById('previewName').value = iVal;
    return true;
};
</script>

如果您尝试这样做但它没有完成您想要的,请告诉我,我可以编写代码来完成它。

于 2011-08-30T17:47:10.947 回答
0

您可以像这样在运行时将您的小程序写入 DOM:

<div id="wrapper"></div>
<input type="text" value="" onchange="writeApp(this.value)">
<input type="button" value="go">

<script type="text/javascript">
function writeApp(pVal) {
     document.getElementById('wrapper').innerHTML = '<applet  code="net.minecraft.skintest.ModelPreviewApplet"  archive="http://www.minecraft.net/skin/skintest.jar" codebase="."  width="320" height="320"><param name="name" value="'+pVal+'" /></applet>'   
}   
</script>

奇怪的是,小程序似乎不喜欢“525”以外的值

于 2011-08-30T18:00:36.497 回答