【问题标题】:jQuery add css stylejQuery添加css样式
【发布时间】:2016-04-05 09:12:18
【问题描述】:

我有这个文本字符串,我想用新的文本字符串替换它,但每次我这样做时,它的 css 都消失了。然后我制作了一个脚本来添加css,但它似乎不起作用。有什么帮助吗?

jQuery('div:contains("text")').replaceWith('newText').css({font-weight:"bolder"});

谢谢

【问题讨论】:

  • 请发布您的 HTML 代码。

标签: jquery


【解决方案1】:

改用.text()

jQuery('div:contains(text)').text('newText').css({"font-weight":"bolder"});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>text</div>

.replaceWith() 方法用代码中的textNode 替换元素,font-weight css 属性必须用引号括起来或使用驼峰命名约定fontWeight

【讨论】:

  • 问题是关于 css 无法正常工作 :P 虽然它已在您的代码中修复 没关系您已修复它
  • @TecHunter 恭喜你也做到了,问题不只是关于 CSS。逻辑 OP 认为他/她会用新的字符串值更新 div 存在问题,但不幸的是,它正在替换它。
  • 我的错,标题太明确了,专注于 css 部分,但也注意到了文字。无论如何,这真的是微不足道的......
【解决方案2】:

Please read the apithis one

您需要将其更改为:

jQuery('div:contains("text")').text('newText').css({fontWeight:"bolder"});

.text()改变文本内容,.html()相同但不转义html

.css 采用 camelHump 大小写作为属性。所以不要使用font-weight 使用'fontWeight''font-weight'

此外,jQuery 可以同等地解释多词属性的 CSS 和 DOM 格式。例如,jQuery 理解并返回 .css( "background-color" ) 和 .css( "backgroundColor" ) 的正确值。这意味着混合大小写具有特殊含义,例如 .css( "WiDtH" ) 不会与 .css( "width" ) 做同样的事情。

【讨论】:

  • 我现在明白了。感谢您的帮助。
【解决方案3】:

如果您创建链接到样式表的标签并将其添加到标签中,浏览器将加载该样式表。

  $('head').append('<link rel="stylesheet" type="text/css" href="lightbox_stylesheet.css">');

【讨论】:

    猜你喜欢
    • 2013-11-08
    • 2015-08-05
    • 1970-01-01
    • 1970-01-01
    • 2013-05-08
    • 2014-11-19
    • 1970-01-01
    • 2020-07-30
    • 2017-06-22
    相关资源
    最近更新 更多