【问题标题】:WinJS URL field, '.com' key issueWinJS URL 字段,'.com' 关键问题
【发布时间】:2013-12-07 21:07:05
【问题描述】:

我们有一个 WinJS 应用程序,它使用 URL 类型的输入来强制在焦点进入字段时弹出正确的虚拟键盘。这包括在“/”键和虚拟键盘上的左箭头之间找到的“.com”快捷键。

每当我们按下此键时,WinJS 似乎都将其解释为“mmmm”,而不是应有的“.com”。

这个字段可能在 WinJS Flyout 控件内部,但我仍在调查中。

有没有其他人遇到过这种情况或找到了解决方法?谢谢!

【问题讨论】:

  • 刚刚在一个简单的演示中尝试了您所看到的,.com 在按下键时出现,而不是“mmmm”。你能提供任何进一步的细节吗?它发生在模拟器和实际设备中吗?
  • 第一代 Surface RT、Surface 2 和“基本触控”模式下的模拟器中也会发生同样的事情。
  • 嗯。我在一个由设置魅力触发的新 Win8.1 WinJS 应用程序中创建了一个弹出控件,带有一个 URL 字段,它的行为正确。我没有在我的 Surface 上尝试过,但在模拟器中它可以正常工作。
  • 您能否在输入框中添加一个keydown 处理程序并为每个按下的键输出evt.char.com 按钮只会使各个键被按下,.com,所以你应该会看到。
  • 我们也创建了一个测试工具,但无法重现。我们还在主应用程序中添加了“keypress”处理程序,正如预期的那样,我们得到了 4 个m 按键事件。真的很奇怪。

标签: javascript windows-8 winjs windows-8.1


【解决方案1】:

好的,这是一个非常奇怪的问题,但我们已将其隔离。问题是 WinJS SearchBox 的 focusOnKeyboardInput 属性被设置为 true 以某种方式干扰。在阅读了此属性上的MS documentation 后,我不确定为什么有人会将其设置为 true。

<body>
    <input type="url" id="url1" />

    <!-- change focusOnKeyboardInput to 'false' and the issue goes away -->
    <div id="searchBuilderSearchBox"
         style="display: none"
         data-win-control="WinJS.UI.SearchBox"
         data-win-options="{
                chooseSuggestionOnEnter: false,
                focusOnKeyboardInput : true, 
                placeholderText: 'keywords',
                searchHistoryContext: 'search',
                searchHistoryDisabled: false }">
    </div>
</body>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-13
    • 1970-01-01
    • 2011-03-16
    • 2011-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多