轻松输入 CSS 规则
前几天我在 DOM Scripting 博客上看到了 一篇帖子,从中发现了一个很好的机会来演示 jQuery 的简洁性,请观察
旧的 DOM 方式
function appendInputTypeClasses() { if ( !document.getElementsByTagName ) return; var inputs = document.getElementsByTagName('input'); var inputLen = inputs.length; for ( i=0; i < inputLen; i++ ) { if ( inputs[i].getAttribute('type') ) { inputs[i].className += ' '+ inputs[i].getAttribute('type'); } } }
新的 jQuery 方式
$("input").each(function(){ $(this).addClass(this.type); });
我甚至考虑实现一种绕过 each() 函数的新方法,请观察
$("input").addClass("{type}");
在 JavaScript 代码方面,你真的无法比这更简洁了。在接下来的几天里,我还会发布/改进一些“旧”的 DOM 脚本示例。
所以,我对这个脚本印象深刻,并将在我新的 CMS 中大量使用它。不幸的是,我总是遇到新的 FIREBUG 插件的调试错误。我将你的最后一个 set Timeout 函数更改为
“if ( typeof Prototype == “defined” && $.g == null && $.clean == null)”,就是这样……
干得漂亮……看起来是我 100 年来一直在寻找的东西……
renkert: 我已经解决了这个问题,现在它使用
不幸的是,没有“defined”值。感谢您的提醒!