我发现这个 jQuery 解决方案可以在真实图像上自动覆盖透明 gif。
http://www.dwuser.com/education/content/stop-the-thieves-strategies-to-protect-your-images/
(“欺骗下载者”)
它在我的 Wordpress 网站 (v. 3.5.1) 和 FancyBox 插件 (v. 1.3.4) 上运行良好。
但是现在我所有与图像相关的链接都消失了......
是否有任何解决方案来保持与图像相关的活动链接?
我还尝试将覆盖 gif 仅归因于 fancybox 框架内的图像,但没有成功......
>>编辑发布相关代码<<
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
var pixelSource = 'http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif';
var useOnAllImages = true;
// Preload the pixel
var preload = new Image();
preload.src = pixelSource;
$('img').live('mouseenter touchstart', function(e) {
// Only execute if this is not an overlay or skipped
var img = $(this);
if (img.hasClass('protectionOverlay')) return;
if (!useOnAllImages && !img.hasClass('protectMe')) return;
// Get the real image's position, add an overlay
var pos = img.offset();
var overlay = $('<img class="protectionOverlay" src="' + pixelSource + '" width="' + img.width() + '" height="' + img.height() + '" />').css({position: 'absolute', zIndex: 9999999, left: pos.left, top: pos.top}).appendTo('body').bind('mouseleave', function() {
setTimeout(function(){ overlay.remove(); }, 0, $(this));
});
if ('ontouchstart' in window) $(document).one('touchend', function(){ setTimeout(function(){ overlay.remove(); }, 0, overlay); });
});
});
</script>
感谢并为我糟糕的英语感到抱歉。d。