-4

我想在我的项目中实现一个虚拟键盘。我之前从未包含过,所以我引用了一个链接,我尝试如下:

<head>
<script type="text/javascript" src="vkboards.js"></script>

    <script>

    // Minimal callback function:
    function keyb_callback(char)
    {
        // bind vkeyboard to the <TEXTAREA>

        // with id="textfield":
        var text =
            document.getElementById("textfield"), val = text.value;

        switch(ch)
        {
            case "BackSpace":
            var min=(val.charCodeAt(val.length - 1) == 10) ? 2 : 1;
            text.value = val.substr(0, val.length - min);
            break;

           case "Enter":
               text.value += "\n";
               break;

           default:
               text.value += ch;
        }
    }

    </script>
</head>

很有型:

#keyboard
{
    width:800px;
    height:400px;
    background-color:#f2f3f1;
    margin:1px auto;
    border-radius:25px;
    box-shadow:5px 5px 5px grey;
}

在体内:

<body onload="new Vkeyboard("keyboard", keyb_callback);">
    <TEXTAREA id="textfield" rows="1" cols="25"></TEXTAREA>
    <div id="keyboard"></div>
    </div>
</body>

我试过这个,在网上搜索,但没有任何效果。请仔细阅读我的代码并帮助我更正它。任何帮助将不胜感激。

4

3 回答 3

1

您可以尝试将键盘周围的引号更改为像这样的单引号。

<body onload="new Vkeyboard('keyboard', keyb_callback);">
于 2013-08-19T18:46:04.773 回答
1

body您的标签中的引号似乎有问题。您经常打开和关闭字符串,这使您的 js 无法运行。body将您的标签更改为:

<body onload="new Vkeyboard('keyboard', keyb_callback);">
于 2013-08-19T18:46:16.627 回答
0

你的函数 VKeyboard() 在哪里?

您正在创建一个对象 new Vkeyboard( 在您的 body 标记中。但是您没有脚本。我猜您缺少 javascript 文件?

您是否将此代码从网站上取下来,还是您拥有的东西?

在标记上方,应该有对 javascript 文件的引用

您的代码不完整。

于 2013-08-19T18:47:06.860 回答