Javascript 更改输入';s占位符';通过jQuery为iOS创建s样式属性
对于其他浏览器,只需设置Javascript 更改输入';s占位符';通过jQuery为iOS创建s样式属性,javascript,jquery,ios,css,Javascript,Jquery,Ios,Css,对于其他浏览器,只需设置#input元素{color:red;}即可为输入的占位符文本着色() 但是,iOS上的情况并非如此;这需要以下内容(可能更合适,但仍然): 好的,没问题。然而,我正试图用jQuery实现这一点,但没有取得多少成功。我尝试了以下方法: $("#input-element::-webkit-input-placeholder").css('color', 'red'); $("#input-element").css('::-webkit-input-placeholder
#input元素{color:red;}
即可为输入的占位符文本着色(
)
但是,iOS上的情况并非如此;这需要以下内容(可能更合适,但仍然):
好的,没问题。然而,我正试图用jQuery实现这一点,但没有取得多少成功。我尝试了以下方法:
$("#input-element::-webkit-input-placeholder").css('color', 'red');
$("#input-element").css('::-webkit-input-placeholder', 'color: red'); // not according to .css documentation: I'm aware
然而,这些都没有任何改变。我试图避免将($(head)。将(“..”;
样式直接附加到文档中
如何通过jQuery更改输入的占位符样式属性–保持iOS兼容性?为什么不切换CSS类 CSS: JavaScript:
$('#input-element').click(function(){$(this).addClass('blue-pl'); });
这在我的iOS 6 iPhone上起作用
我不确定这在不附加到头部的情况下是否可行。这基本上与尝试更改样式的
:hover
属性相同。它是一个伪类,不能直接由jQuery的css
或Javascript的DOM API修改。您可以查看一下这个解决方案:@jValdron这正是OP的功能他们想要的援助avoid@Ian我知道,但正如你所指出的,这可能是唯一的解决方案之一。@jValdron是的,但我猜这是他们已经发现的问题,并且在他们说他们不想使用时引用了这个问题。除非我看到那个问题,否则我决不会想到使用这种技术,但我想那是绝对的别骗我
input[type=text]::-webkit-input-placeholder { color: red; }
.blue-pl::-webkit-input-placeholder {
color: blue !important;
}
$('#input-element').click(function(){$(this).addClass('blue-pl'); });