Windows Phone 8. IE10中不支持autocapitalize

时间:2013-06-21 13:49:53

标签: windows-phone-8 windows-phone internet-explorer-10

适用于iOS& Android,他们的webkit浏览器支持输入元素的autocapitalize属性,以控制句子的第一个单词是否大写。

在Windows Phone 8 IE10上,这不起作用。有没有人知道在Windows Phone上IE10中实现自动大写的等效方式?

1 个答案:

答案 0 :(得分:1)

如果不支持,则必须通过JavaScript自行完成。假设移动浏览器正在触发键和/或更改事件,您可以简单地挂钩这些事件并相应地转换输入值。

这是一个示例,它转换了可能前面有空格的第一个字母,以及一个后跟空格的句点之后的第一个字母:

$('[autocapitalize="on"]').on('change keyup', function(event)
{
    var selectionStart = event.target.selectionStart;
    var selectionEnd = event.target.selectionEnd; 

    var element = $(this);
    element.val(element.val().replace(/^\s*(.)|\.\s+(.)/g, function(letter)
    {
        return letter.toUpperCase();
    }));

    event.target.setSelectionRange(selectionStart, selectionEnd);
});

jsfiddle example