2010-07-25 72 views
1

我在我的页面中有图像,我不希望它拾起鼠标点击(如在浏览器中固有的拖放或拖动选择它在浏览器中突出显示图像的位置。)有没有办法让一个img标签在浏览器中不可选?

Is there我可以对img或其父dom元素或页面做些什么来使浏览器在我点击图像时不做任何事情?我需要使用mousedown做其他事情,但浏览器似乎执行我的mousedown事件以及做自己的拖动或突出显示,我不希望它。 任何想法?

+2

如果你想这样做是为了防止人们复制和粘贴的图像或保存它,那么就不要指望它是对谁知道很有效任何有关电脑的事 – 2010-07-25 21:43:26

+0

如果你把门锁上你的房子,不要指望它对任何有关盗窃行为的人都非常有效...... 通过让事情变得更难,你可以阻止大多数人做某事。但在此之后,阻止它变得越来越困难。 – 2010-07-25 21:48:30

+0

早在他们将黑客这个词的含义改变成今天的含义之前,我就是一名黑客。我知道最好的办法是让人们不要在他们的机器上用数据做他们想做的事。 :-) – stu 2010-07-25 22:09:45

回答

5

创建一个与图像大小相同的div,然后将图像设置为div的背景。

+0

我喜欢简单,这听起来不错,但我正在尝试它,它不会。我正在动态地制作这些img/div,并且每当我尝试设置style =“background:url(blah)”时,我都会遇到一个错误,试图设置何时只有一个getter可用。如果我使用style.backgroundImage = url,那么我没有错误,但图像不显示。 是否有一些z索引或着色,我必须在我新创建的元素或一些内联样式或东西设置? – stu 2010-07-25 22:08:44

+0

没关系我的语法错了,让它工作,谢谢。 – stu 2010-07-25 22:21:47

+0

噢,新问题。我需要拉伸背景图像,从我正在阅读的内容中,这是不可能的。我错过了一些诀窍吗? – stu 2010-07-25 22:26:26

0

最好的主意,我所得到的,是覆盖一些透明<div<img ...和鼠标按下动作绑定到它:)编辑:或者,当然,如果u不会与IMG玩,ü可以使用它作为一个background您DIV。

+0

你是什么意思“如果你不玩img”我创建了图像我可以做任何我想做的事情,但是如果我不需要,我不想做出两个元素。 – stu 2010-07-25 22:11:06

+0

我的意思是,如果你的IMG是背景图像,将会更难以改变它,调整大小等等...... – IProblemFactory 2010-07-25 22:26:07

1

使用jQuery,

$('img').click(function() { 
    return false; 
}) 
+2

真的可以做到没有那30KB;> – IProblemFactory 2010-07-25 21:47:52

+0

有些人已经在他们的网站上使用jQuery ... – 2010-07-25 23:13:03

2

递归说,使用一个div,并设置它的背景图片到你想要的图像,例如:

<div style="width: 879px; height: 576px; background-image: url(image.png);"> 
相关问题