javascript - 使用 jQuery printElement 插件时出错

标签 javascript jquery

你能看看this demo吗?让我知道为什么在使用 jQuery printElement 插件打印 .table 时出现以下错误?

错误

Uncaught TypeError: Cannot read property 'opera' of undefined

代码:

$(function () {
    $('button[type="submit"]').click(function () {
      $(this).closest('.panel').find('table').printElement();
    });
});

谢谢

最佳答案

问题出在您的 jQuery 版本(2.x edge)上。

打印脚本使用:

if ($.browser.opera || (/chrome/.test(navigator.userAgent.toLowerCase())))
    mainOptions["printMode"] = 'popup';

因此您将 jQuery 版本更改为旧版本,它仍然使用 $.browser 支持。 后来不鼓励这样做,因为在针对用户代理字符串进行有条件编程时,x 浏览器和 x 设备支持不能很好地工作。

整个想法的改变始于 jQuery 1.8 版左右。现在,无论您使用哪种浏览器/设备,都建议使用支持检测。

关于javascript - 使用 jQuery printElement 插件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28917528/

相关文章:

javascript - 为什么这个函数在运行时会出错,但复制到控制台时不会出错?

JQuery 窗口打印功能问题

javascript - JavaScript 中的 Formtastic(表单生成器)

javascript - 单击一次解除右键单击绑定(bind)

javascript - iOS HTML 相机预览输入文档

javascript - 使用knockoutjs在MVC中绑定(bind)图像路径

javascript - 无法将十进制 html 特殊字符分配给 dom 值

javascript - 如何从常规javascript函数访问jquery中的变量

javascript - 使用 JS 编辑 CSS 媒体查询

javascript - 如何在 jQuery 中将每个兄弟元素附加到其兄弟元素?