[英]Jquery BlockUI to block external links
當您單擊域不同於.com的鏈接時,我一直在尋找一種不錯的方法,它會發出警報來阻止屏幕(Jquery BlockUI)並阻止轉到外部鏈接,直到您按OK轉到該鏈接或取消為止不要去鏈接。 但是目前,當我單擊鏈接時,它將打開鏈接,然后阻止UI。
。
<a href="http://www.ibm.it/" target="_blank" onClick="onClick_handler(this)">IBM</a>
。
function onClick_handler(e) {
var mySource = window.event.srcElement;
if ((mySource.tagName == "A")) {
if (mySource.href.indexOf("com") == -1)
{
blockTheScreen(" ATTENTION YOU ARE EXITING THE .COM WEB SITE"
+ "<button type='button' id='OK' >OK</button>"
+ "<button type='button' id='Cancel' >Cancel</button>"
);
}
。
function blockTheScreen(fnBlockUiText){
$.blockUI(
{ message: $(fnBlockUiText)
, css: {
backgroundColor: '#ddd',
color: '#00f',
width: '700px',
height: '500px',
padding: '12px',
position: 'fixed',
top: '50%',
left: '50%',
marginTop: '-250px',
marginLeft: '-350px',
}
});
在function onClick_handler(e)
return false;
防止它執行clicked元素的默認操作
不要在函數末尾阻止它,這將禁用所有鏈接,而是將return false放入if語句true塊中。
if (mySource.href.indexOf("com") == -1)
{
blockTheScreen(" ATTENTION YOU ARE EXITING THE .COM WEB SITE"
+ "<button type='button' id='OK' >OK</button>"
+ "<button type='button' id='Cancel' >Cancel</button>");
return false;
}
更改
<a href="http://www.ibm.it/" target="_blank" onClick="onClick_handler(this)">IBM</a>
到IBM
另外,在對blockTheScreen
的調用blockTheScreen
,在最里面的if
,添加一個
return false;
在它的結尾
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.