首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打印中的条形内嵌样式

打印中的条形内嵌样式
EN

Stack Overflow用户
提问于 2014-05-06 21:23:31
回答 1查看 222关注 0票数 1

在打印文档时,我需要对其进行不同的格式化。基本内容,媒体打印与屏幕,然而,这个特定的网页是得到一些内嵌样式动态插入。我怎么才能在送去打印之前剥掉它们?

我使用jQuery添加了一个元素,该元素在屏幕上不可见,但显示在print (#myElement)中。所以我试着利用这个元素,但并没有真正成功。

代码语言:javascript
复制
if ($('#myElement').is(':visible')) {
    $('.myContent').attr('style', '');
}

我遗漏了什么?

谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-06 21:33:42

下面是一个示例,说明如何使用普通的、普通的JS:http://jsfiddle.net/AfdzW/来完成此操作。基本上,您只需针对希望删除其内联样式的DOM元素并调用它们上的removeAttribute()方法即可。

代码语言:javascript
复制
function clearInlineStyles(sel) {
  var els = document.querySelectorAll(sel);
  [].forEach.call(els, function(e) {
    e.removeAttribute('style'); 
  });
}

clearInlineStyles('div');

作为另一种选择,如果您只希望针对某些内联样式,可以使用$.fn.css() jQuery方法单独针对这些样式:

代码语言:javascript
复制
$.fn.removeSelectedStyles = function() {
  var styles = arguments;
  this.each(function() {
    var $that = $(this);
    [].forEach.call(styles, function(style) {
      $that.css(style, '');
    });
  });
}

$('div').removeSelectedStyles('background', 'height');

这里有一个小提琴演示了jQuery插件的工作原理

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23504768

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档