【发布时间】:2012-05-28 12:09:45
【问题描述】:
我有一个获取 URL 路径并将其添加为 body 类的 JQuery 函数:
var pathname = window.location.pathname;
var pathSlashesReplaced = pathname.replace(/\//g, " ");
var pathSlashesReplacedNoFirstDash = pathSlashesReplaced.replace(" ","");
var newClass = pathSlashesReplacedNoFirstDash.replace(/\(\d*\)/g, '').replace(/\s/, '-');
$("body").addClass(newClass);
if ( $("body").attr("class") == "")
{
$("body").addClass("class");
}
.. 所以如果 url 类似于 /myapp/user/list,那么 body 类最终会是:
<body class="myapp-user list">
问题是我希望所有三个单词都带有破折号,所以应该是:
<body class="myapp-user-list">
.. 然后我可以使用 CSS 主题化:
.myapp-user-list {
}
我很确定我的 RegEx 存在问题,但我不知道在哪里。我尝试了各种文本函数,但问题是它从页面中抓取了所有文本并将其作为正文类放入:
var text = $(this).text();
var newClass = $.trim(text.replace(/\(\d*\)/g, '').toLowerCase()).replace(/\s/, '-');
【问题讨论】:
标签: javascript jquery regex text replace