jquery - 通过 CSS 属性设置元素属性,这可能吗?

标签 jquery html css xhtml properties

CSS代码

input.long{
    width:50%;
    max-length:50;
}
input.number{
    width:4em;
    max-length:4;
}

应用html代码,

Title : <input type='text' class='long'/>
Phone : <input type='text' class='short'/>-<input type='text' class='short'/>-<input type='text' class='short'/>

一个脚本(简单地使用 jquery)在 css 中应用属性,

$('input:text.long').attr('maxlength',$('input:text.long').css('max-length'));
$('input:text.short').attr('maxlength',$('input:text.short').css('max-length'));

适用于 IE,但不适用于其他浏览器。 我可以在主要浏览器上通过 css 属性设置单个或多个元素属性吗?

最佳答案

您的代码很可能不起作用,因为“max-length”不是有效的 CSS 属性。我的猜测是,当您尝试通过该名称读取 CSS 属性时,jQuery 会返回 false。此 false 然后被解释为 0,它应用于输入的 maxlength

maxlengthinput 的有效属性,它所需要的只是一个值的整数。只要您可以从 CSS 属性中获取它,就没有理由不起作用。例如,如果您取而代之的是计算出的 CSS 宽度并将其解析为整数,则可以将输入的最大长度设置为该值。 http://jsfiddle.net/sdq7H/

关于jquery - 通过 CSS 属性设置元素属性,这可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4383386/

上一篇:html - 对齐问题

下一篇:CSS 命名准则

相关文章:

javascript - 使用 onChange 属性内联更改复选框的值

javascript - 显示/隐藏带有链接的多个 Div

css - 我怎样才能让这个文本在同一行

html - Bootstrap - 图像上的固定位置

html - Pardot 表格 : Two Column Layout for Radio/Checkboxes

jquery - 在 div 单击时切换动态创建的表

javascript - 什么更快 : anchoring or hide/show with JS?

jquery - 将元素 move 到最接近的其他具有类的元素

javascript - jQuery 使用 css() 改变 DIV 背景

html - 在数据库中显示html文本发生错误