2013-03-21 101 views

回答

0

沒有辦法完全阻止源查看。但也有幾種方法來禁用右鍵點擊:

1)投票:

<script language="JavaScript"> 
<!-- 

var message="Your message goes here."; 

function click(e) { 
if (document.all) { 
if (event.button == 2) { 
alert(message); 
return false; 
} 
} 
if (document.layers) { 
if (e.which == 3) { 
alert(message); 
return false; 
} 
} 
} 
if (document.layers) { 
document.captureEvents(Event.MOUSEDOWN); 
} 
document.onmousedown=click; 
// --> 

2)添加以下到您的標記:oncontextmenu = 「返回false」

參考https://forum.powweb.com/archive/index.php/t-36161.html

2

你不能。如果URL不在HTML中,瀏覽器將如何知道從哪裏獲取它?

你可以嘗試的一件事是將其隱藏起來,使其稍微難一些找人找。您可以將src屬性設置爲空,然後在文檔準備就緒時,通過單獨的AJAX請求從服務器獲取URL值,並更新iframe標記以將該值包含在src中。

然而,這將是一個相當數量的工作,並不會真正完成任何事情。它會阻止的唯一事情是有人通過查看頁面源來查找它。他們仍然可以在任何Web瀏覽器的調試工具中查看HTML的「當前版本」。 (右鍵單擊一個元素並對其進行檢查,此時幾乎無處不在)或者任何其他正常的流量嗅探工具都會在白天看到它。

最終,如果網絡瀏覽器需要知道一條信息,那麼該信息需要在客戶端可見。

5

您可以使用javascript來加載源代碼,並且它在頁面源代碼中的iframe url中將不可見。 例如與jQuery

<script type="text/javascript"> 
$(document).ready(function(e) { 
    $('iframe').attr('src','http://www.flickr.com/'); 
}); 
</script> 

<body> 
<iframe src="" /> 
</body> 

Example here.

你可以用$.post結合起來,以獲得價值服務器端:

$.post('get-iframe-src.php', function(data) { 
    $('iframe').attr('src',data); 
}); 

你甚至可以載入iframe自己像一些元素:

$.post('get-iframe.php', function(data) { 
    $('#element_id').html(data); 
}); 

等解決方案很多,這只是其中之一。

+0

@ user2128747你是什麼意思? – wzazza 2013-03-21 13:33:55

+0

這不會是足夠的: http://jsbin.com/suqupanume/edit?html,js,console,output 當您使用jquery,或爲此,JavaScript來更改iframe屬性,它將變得可見對於那些檢查iframe的人。 – andretzermias 2017-07-12 18:10:56