我正在使用onclick="window.location.href"
作为mailto
链接的一部分,我想知道是否有办法将文档标题限制为特定长度。更具体地说,我们的标题标题为|
,我想在第一个|
结束主题行。这是我正在使用的代码。
<a style="color:#b9b9b9" href="mailto:?subject=&body=:%20http%3A%2F%2Fwww.taconic.com" title="Share this page" onclick="window.location.href='mailto:?subject=Check out this page:%20' + encodeURIComponent(document.title) + '&body=' + encodeURIComponent(document.URL); return false;"><i class="fa fa-envelope"></i></a>
答案 0 :(得分:0)
更具体地说,我们的标题标题有|我想在第一个|。
结束主题
将document.title
替换为以下内容:
document.title.replace(/^([^|]+)\|.*$/, '$1')
在上面的代码中,我们使用String.prototype.replace
。第一个参数是正则表达式,其中
^
字符代表行的开头; [^|]
是一组所有字符,|
字符除外; \|
是使用反斜杠转义的|
字符,与“OR”表达式语法不同; .*
表示任何重复零次或多次的字符(点); $
字符代表该行的结尾。第二个参数是替换字符串,其中'$1'
指向正则表达式中的第一个组(括号)。
换句话说,代码会从document.title
的开头提取所有字符,直到|
字符。
您可以使用String.prototype.substr
缩短字符串,例如:
document.title.replace(/^([^|]+)\|.*$/, '$1').substr(0, 20)
上面代码中的substr
方法从replace
方法返回的结果开头减去20个字符。我们链 substr
来电,因为replace
方法会返回String
。