The window.open () pop-up window is blocked.

  ios, question

Send a url from the back end, and when the front end receives it, open a new window to jump to this link.
Usewindow.open(url, '_blank');Blocked by browser.

Is there any way to achieve this? After trying to simulate a tag, click on it to intercept it, and pop up div to load iframe. no, you must open the window.

The problem has been solved, see adopting the answer.

The first thing to know about this problem is why the browser will intercept and call “non-human”window.openWhat is meant by “non-human” is that the browser judges whether the user is operating or not.window.openIf there is no continuity between them, the browser will think it may be an advertisement window popped up by a rogue program to intercept it.
It can be seen from the description of the building owner that the building owner should get a url through ajax after performing an operation, and then throughwindow.openWhen opening the page, we all know that ajax is asynchronous, and the browser thinks it is not continuous, so it intercepts it.
The solution can be to directlywindow.open, and then go to ajax to obtain data, and then assign url to the open window. The approximate pseudo code is as follows:

el.addEventListener('click',function(){
 var winHandler = window.open("","_blank");
 ajax(function(url){
 winHandler.location.href = url;
 });
 
 })