如何设置一些属性,例如 white space = nowrap 到从内容中提取的 url,然后再分配给 span textContent
How do I set some attributes e,g white space = nowrap to the url extracted from content before asigning it to span textContent
javascript.
中子字符串的任何逻辑设置
if (spanArr.length != 0) {
var span = document.createElement('span');
var content = spanArr.join(" ");
var url = content.match(/((([A-Za-z]{3,9}:(?:\/\/)?)(?:[-;:&=+$,\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=+$,\w]+@)[A-Za-z0-9.-]+)((?:\/[+~%\/.\w-]*)?\??(?:[-+=&;%@.\w])#?(?:[\w]))?)/);
span.textContent = ?;
divContent.appendChild(span);
}
如何设置一些属性,例如 white space = nowrap 到从内容中提取的 url,然后再分配给 span textContent。
看来你混淆了一些概念。
white-space: nowrap is a CSS statement that, when applied to an HTML element, causes the text and any inline level elements 在该元素内,当到达元素的边缘时不换行到下一行。这仅适用于具有宽度或无法扩展以容纳内容的块级元素。
CSS 属性如 white-space
只能应用于 DOM 元素,不能应用于字符串(如你的 url
)。在这种情况下,url
将是 span
元素的文本内容(实际上是 textContent
)。 white-space
将是元素的 CSS 属性。
CSS 属性可以通过 3 种方式应用于 DOM 元素:通过 [=51= 的 <style>
tag or external CSS file; though the HTML style
attribute, or through direct manipulation in JavaScript of the related style
属性 中的 CSS 声明] HTMLElement
.
由于您在 JavaScript 工作,所以您想在这里进行后者。如果我理解正确你正在尝试做什么,下面的代码应该能得到你想要的:
span.textContent = url;
span.style.whiteSpace = 'nowrap';
divContent.appendChild(span);
注意:在JavaScript中,style
属性的CSS属性是用驼峰命名的(单词中间大写),而不是kebab-case(单词之间有连字符),因为 JavaScript 会将 -
字符解释为算术运算符,如果您要使用它的话。
另一个注意事项:应用于 span
的 white-space
可能不会做很多事情,因为 span
不是块级元素。如果您的目标是让 span
不包含在 divContent
元素中,您应该将样式添加到该元素:
divContent.style.whiteSpace = 'nowrap';
javascript.
中子字符串的任何逻辑设置if (spanArr.length != 0) {
var span = document.createElement('span');
var content = spanArr.join(" ");
var url = content.match(/((([A-Za-z]{3,9}:(?:\/\/)?)(?:[-;:&=+$,\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=+$,\w]+@)[A-Za-z0-9.-]+)((?:\/[+~%\/.\w-]*)?\??(?:[-+=&;%@.\w])#?(?:[\w]))?)/);
span.textContent = ?;
divContent.appendChild(span);
}
如何设置一些属性,例如 white space = nowrap 到从内容中提取的 url,然后再分配给 span textContent。
看来你混淆了一些概念。
white-space: nowrap is a CSS statement that, when applied to an HTML element, causes the text and any inline level elements 在该元素内,当到达元素的边缘时不换行到下一行。这仅适用于具有宽度或无法扩展以容纳内容的块级元素。
CSS 属性如 white-space
只能应用于 DOM 元素,不能应用于字符串(如你的 url
)。在这种情况下,url
将是 span
元素的文本内容(实际上是 textContent
)。 white-space
将是元素的 CSS 属性。
CSS 属性可以通过 3 种方式应用于 DOM 元素:通过 [=51= 的 <style>
tag or external CSS file; though the HTML style
attribute, or through direct manipulation in JavaScript of the related style
属性 中的 CSS 声明] HTMLElement
.
由于您在 JavaScript 工作,所以您想在这里进行后者。如果我理解正确你正在尝试做什么,下面的代码应该能得到你想要的:
span.textContent = url;
span.style.whiteSpace = 'nowrap';
divContent.appendChild(span);
注意:在JavaScript中,style
属性的CSS属性是用驼峰命名的(单词中间大写),而不是kebab-case(单词之间有连字符),因为 JavaScript 会将 -
字符解释为算术运算符,如果您要使用它的话。
另一个注意事项:应用于 span
的 white-space
可能不会做很多事情,因为 span
不是块级元素。如果您的目标是让 span
不包含在 divContent
元素中,您应该将样式添加到该元素:
divContent.style.whiteSpace = 'nowrap';