jquery - 占位符在 IE9 中不起作用

标签 jquery html twitter-bootstrap apex-code placeholder

我是 salesforce (SFDC) 开发人员。 在我的输入框的 Visualforce 页面中,我使用占位符代码。

<div class="control-group">
    <label class="control-label visible-desktop" for="first_name">First Name</label>
    <div class="controls">
        <input class="input-block-level" name="First Name" id="first_name" placeholder="First Name" value="" type="text" required="required" autofocus="autofocus" />
    </div>
</div>

我在互联网上检查了一些 CSS hack,但没有找到。 我发现了一些 javascript hack。

HTML5 占位符 jQuery 插件

https://github.com/mathiasbynens/jquery-placeholder

演示和示例

http://mathiasbynens.be/demo/placeholder

但我不想使用 jQuery hack 之类的东西。

最佳答案

由于 IE9 不支持 placeholder 属性,您可以像这样在 Javascript/jQuery 中执行此操作(快速编写,未测试):

if(navigator.appVersion.match(/MSIE [\d.]+/)){
    var placeholderText = 'Some Placeholder Text';
    $('#first_name').val(placeholderText);
    $('#first_name').blur(function(){
        $(this).val() == '' ? $(this).val(placeholderText) : false;
    });
    $('#first_name').focus(function(){
        $(this).val() == placeholderText ? $(this).val('') : false;
    });
}

对模糊事件也执行相同的操作,然后这将模仿占位符属性。

[编辑]

好吧,在重新考虑这一点(由于评论)之后,这确实不是最优雅的解决方案(但是它确实有效),所以我会完全忽略这个答案。

关于jquery - 占位符在 IE9 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17696646/

相关文章:

javascript - jquery:单击并拉动类似于 chrome 网上商店 slider

javascript - 如何使用 React Developer Tools 单击按钮?

javascript - 列表组中的链接在触发时不打开(Bootstrap 轮播调整)

javascript - 我应该如何使用 JavaScript 逐步增强此内容?

php - Twitter Bootstrap HTML 表单单选按钮不适用于 PHP POST

html - 如何让bootstrap进度条从左到右高亮效果?

javascript - 如何使用 Javascript (jQuery) 按顺序淡入 div?

php - 无法在 jquery 和 jtable 中使用 datepicker 进行更新和创建

javascript - jQuery:通过属性在 HTML 上使用选择器

html - Servlet返回“HTTP状态404请求的资源(/Servlet)不可用”