У меня есть ссылка, при нажатии на которую браузер открывает новое окно. Это код события клика по этой ссылке:
var clickView = function(){
window.open('/client/item/show/' + itemID);
return false;
};
У меня также есть еще одна функция, которая читает URL-адрес из вызова ajax и открывает его в новом окне.
if (json.data && json.data.URL)
{
if (me.urlTarget==='_self'){
//use the self window to open the URL
window.location.href =json.data.URL;
} else{
//use new window to open the url.
window.open(json.data.URL);
}
}
Для первой функции (clickView) браузер (IE7/8 и Firefox) откроет новую вкладку без предупреждения пользователя. Для второй функции (где URL-адрес считывается из json.data.URL) и IE, и Firefox будут отображать предупреждающее сообщение и блокировать новое окно, пока пользователь не согласится с предупреждением. В обеих функциях начальный URL одинаков.
Мне интересно, почему есть разница, и можно ли заставить их вести себя последовательно?