我需要解决对我公司平台的限制,在该平台上只能使用文件名作为标题来呈现页面。我不想更改我的文件名以使其具有值,"此页面标题包含空格,也可能是非法字符",因为我不希望我的网址有一堆%20
和其中的非法字符,所以我一直试图弄清楚如何使用我控制的页面另一部分的内容 - 面包屑 - 作为"标题"
我一直在尝试使用jQuery的.get
和.replaceWith
将title
标记的内容替换为span.ms-pagetitle
的内容,其中包含我可以编辑的部分,但是我是jQuery noob,而且还没有能够将其排除在外。
答案 0 :(得分:4)
应该这样做:
$('title').text($('span.ms-pagetitle').text())
这应该只运行一次;通常在$(document).ready()
函数内。 .ms-pagetitle
元素应该没有子元素。
这里有两件事:
$('span.ms-pagetitle').text()
首先选择与span.ms-pagetitle
匹配的所有项目。希望只有一个,但它会抓住它们。使用:first
或其他更具体的选择器来获取所需的选择器。 .text()
将
获取匹配集合中每个元素的组合文本内容 元素,包括它们的后代,或者设置文本内容 匹配的元素。
...因此想要保持跨度没有孩子。
这样会产生一串文字。
传递字符串时 $('title').text('string')
将设置所选标记的内容(当使用无参数时获取),因此您将设置所选标题文本作为此处<title>
标记的内容。