防止Firefox在鼠标中键单击时在新选项卡中打开svg图像

时间:2013-12-19 13:28:06

标签: javascript events firefox svg raphael

我目前正在开发一个javascript项目,我使用Paper.image函数将svg图像放在我的RaphaelJS svg画布上(参见此处:http://raphaeljs.com/reference.html#Paper.image)。 对于某些操作,用户必须使用鼠标中键单击。但是,当用户在包含的svg图像上单击(使用鼠标中键)时,Firefox会在新选项卡中打开图像。 (Chrome不会这样做) 由于我想否认这种行为,我试图打电话

function(e) {e.preventDefault();}

作为onclick事件,但这不会改变Firefox的行为。

http://jsfiddle.net/M7K2q/

1 个答案:

答案 0 :(得分:1)

事实上,你通过中间点击打开图像的能力被认为是Firefox的“功能”。

<强> BUT!  您可以将图像作为其他元素(如矩形)的背景显示,并获得相同的效果。

 var paper = Raphael("canvas", 400, 400);
 paper.rect(0, 0, 114, 40.6).attr({
    fill: "url(https://www.google.com/logos/2011/twain11-sr.png)"
 }).attr({ stroke: '' });

http://jsfiddle.net/saxxi/9BcDd/1/