2013-08-22 30 views
0

我被要求在網站上禁用右鍵點擊,我已經通知他們有很多方法,人們仍然可以通過Google Images,Cache,Firebug等下載圖像等等,但是我的觀點已經被忽略了,他們堅持認爲這一定是必須完成的。NivoSlider - 禁用右鍵單擊

任何,我已經在頁腳中放置了一些代碼,禁止右鍵點擊所有使用​​的元素,這在NivoSlider上無法正常工作,我改變了腳本以使用窗口加載禁用右鍵單擊工作,但在slide1之後它停止工作,我認爲這是與DOM的變化有關。

JavaScript是迄今爲止我的最薄弱的一點,我希望沒有太多麻煩的人可以給我一個完整的工作解決方案或繼續下去。提前致謝。

他們使用NivoSlider具有以下觸發:

<script type="text/javascript"> 
    (function($) { 
     $(window).load(function() { 
      $('#slider').nivoSlider(); 
     }); 
    })(jQuery); 
</script> 

這是我已經放置在未能在滑件工作頁腳代碼+

<script> 
    $(window).load(function() { 
     $('img').bind('contextmenu', function(e) { 
      return false; 
     }); 
    }); 
</script> 

回答

1

您與DOM的變化是絕對正確的。您需要將事件委託給父元素。如果使用jQuery> 1.7

$('#slider').delegate('img', 'contextmenu', function(e) { 
    return false; 
}); 

或者這樣:

嘗試是這樣的

$('#slider').on('contextmenu', 'img', function(e) { 
    return false; 
}); 
+0

優秀,最上面的一個立竿見影的工作沒有任何進一步的編輯。非常感謝+1並接受。 –