问题标签 [shim]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
7376 浏览

javascript - 在 DIV 上实现跨浏览器兼容性的良好“背景大小:覆盖”后备/垫片/技巧?

因此,我使用background-size:cover来实现背景图像的预期效果,该背景图像可以缩放到它所应用的 div 的任何大小,同时保持纵横比。为什么使用这种方法?根据相关 WordPress 帖子中设置为图像的内容,使用内联 CSS 通过 PHP 动态地将图像应用为背景。

所以一切都很好,但是否有任何后备措施来确保这至少在 IE8 中有效?可能有一些 Javascript 修复?

已经尝试过backstretchsupersized,但无济于事,因为它们仅将图像应用于页面背景。

你可以在这里看到它的作用。

0 投票
1 回答
1690 浏览

c - 为 Windows 创建应用程序兼容性填充程序

这篇博文提到了如何创建自己的垫片。

我不明白的是:

当更新版本的 DLL 出现时(具有更多导出函数),这种技术不会中断吗?

即,如果您使用 shim DLL完全覆盖目标 DLL,那么您将如何处理您没有/无法实现重定向的函数?

0 投票
2 回答
4241 浏览

design-patterns - 垫片和外观/适配器模式有什么区别?

我正在开发一个需要使用某些库的不同不兼容版本的应用程序。我的直觉是在应用程序和库之间引入一个适配器,该适配器将在其中注入适当的库对象。然后,有人告诉我关于垫片的事。关于它的文献不多。

我想知道垫片与外观和适配器设计模式有何不同?相同的一些流行用途是什么?

0 投票
2 回答
731 浏览

binding - 用于绑定函数的 ES5 shim 是 Javascript

下面是用于 JS 绑定的 ES5 垫片。我不明白 self .apply 在绑定函数中。我知道如何使用 apply 方法,但是在这种情况下self指向哪里?它应该是一个
函数,但这里self看起来像一个对象。

0 投票
0 回答
194 浏览

javascript - CSS3 高度动画 shim/polyfill

所以我想知道是否有人知道一个好的 javascript shim 可以在 IE8 中使用 javascript 来增强动画(尤其是高度)?还是我必须自己写一个?:/

谢谢!

0 投票
2 回答
717 浏览

c++ - 在可变参数模板中使用垫片的更简洁的方法?

C++ 模板通常被同化为膨胀的创造者,而 Shim 的想法正是针对这一点:使模板只是常规函数的薄包装。这是减少臃肿的好方法。

例如,让我们使用一个简单的垫片:

现在,我可以像这样使用它:

而且无论如何print_impl实现,print仍然非常轻量级,应该内联。十分简单。


然而,C++11 引入了可变参数模板。典型的冲动是使用 C++11 可变参数模板重新实现所有不安全的 C 可变参数,甚至 Wikipedia 也建议使用printfimplementation

不幸的是,维基百科的实现不处理位置参数:允许您指定打印第三个参数的类型,等等......如果我们有一个带有这个原型的函数,那就很容易了:

或类似的。

现在,我们如何从原始界面桥接

到上面的签名?

shims 的一个困难是它们依赖于对 const-ref 行为的绑定来延长临时包装器的生命周期,而不必动态分配内存(如果这样做的话,它们不会便宜)。

一步完成绑定+数组转换似乎很困难。特别是因为语言中不允许引用数组(和指向引用的指针)。


对于那些感兴趣的人,我有一个解决方案的开始:

但是您会注意到引入了一个补充步骤,这有点烦人。尽管如此,它似乎仍然有效。

如果有人提出更好的实施方案,我将不胜感激。


@Potatoswatter 建议使用初始化列表,这有点帮助(没有范围)。

但仍然没有解决中间函数问题。

0 投票
3 回答
21004 浏览

javascript - 使用 RequireJS 2.0.1 和 shim 加载 jQuery、Underscore 和 Backbone

我正在对 RequireJS 2.0.1进行一些试验。我的目标是正确加载 jQuery、Underscore 和 Backbone。从最初的RequireJS 文档中,我发现作者 J. Burke(在这个新版本中)添加了一个名为 shim 的新配置选项

然后我把这些东西写在这里:

index.html

scripts/main.js

一切似乎都很好,但我觉得我错过了一些东西,我知道有AMD 版本的 jQuery 和Underscore但如果设置如此简单,我不明白为什么我应该使用它们。

那么,这个设置是正确的还是我错过了什么?

0 投票
1 回答
304 浏览

visual-studio-2012 - Visual Studio 11 shims vs mocks

Just read about the new Stubs & Shims support in Visual Studio 11.

Stubs are clear to me, but Shims? Are they an alternative for Moles? Or can they be used to do mocking?

0 投票
1 回答
1470 浏览

php - PHP 5.3 - 5.4 垫片

我的服务器正在运行 PHP 5.2。是否有一些垫片,所以我可以在 PHP 5.2 中使用至少一些 PHP 5.3 的新功能?像:

<?php if ( !defined('__DIR__') ) define('__DIR__', dirname(__FILE__)); ?>

0 投票
2 回答
2385 浏览

windows-7 - 查询已安装的 ACT 垫片列表

有谁知道我如何以编程方式获取给定计算机上已安装 ACT 垫片的列表?名称是否存储在注册表中的某个地方?我不需要脚本方面的帮助,只需一点帮助就可以指出我在哪里看。特别是对于 Windows 7。TIA!