Javascript 谷歌Chrome移动仿真器:如何强制它在仿真器中打开新标签?

Javascript 谷歌Chrome移动仿真器:如何强制它在仿真器中打开新标签?,javascript,google-chrome,Javascript,Google Chrome,我调试移动网站,使用桌面仿真器比使用移动设备本身更舒服。我使用嵌入谷歌浏览器的模拟器。它改变了视口大小和用户代理,所以网站看起来和手机相当相似 当任何链接包含target=“\u blank”时,Chrome会在没有任何仿真的情况下打开它,因此无法调试包含此类链接的网站 我的问题是:有没有办法强迫Google Chrome打开与其父窗口具有相同模拟设置的“新标签”链接?也许你可以创建一个if语句,检查你是否在移动设备上,然后循环浏览你的所有链接,并将“target=“\u blank”替换为“t

我调试移动网站,使用桌面仿真器比使用移动设备本身更舒服。我使用嵌入谷歌浏览器的模拟器。它改变了视口大小和用户代理,所以网站看起来和手机相当相似

当任何链接包含
target=“\u blank”
时,Chrome会在没有任何仿真的情况下打开它,因此无法调试包含此类链接的网站


我的问题是:有没有办法强迫Google Chrome打开与其父窗口具有相同模拟设置的“新标签”链接?

也许你可以创建一个if语句,检查你是否在移动设备上,然后循环浏览你的所有链接,并将“target=“\u blank”替换为“target=“\u self””。我认为这很好,因为你只需要在你的电脑上的开发时间

if(/android|mobile/i.test(navigator.userAgent)){
   var links = document.getElementsByTagName("a");
   for(var i = 0; i < links.length; i++){
      links[i].setAttribute("target","_self");
   }
}
if(/android | mobile/i.test(navigator.userAgent)){
var links=document.getElementsByTagName(“a”);
对于(变量i=0;i
最好控制使用Chrome调试的网页,因此可以在该网页上插入JavaScript。如果您没有访问web服务器的权限,可能可以编写自动嵌入此JavaScript的Chrome扩展,因为在每次加载页面时手动嵌入JavaScript非常耗时。@Vitaliy您也可以将其保存为书签,然后单击它添加脚本:(JavaScript:if(/android | mobile/i.test)(navigator.userAgent)){var links=document.getElementsByTagName(“a”);for(var i=0;iiframe一起工作吗?这取决于iframe src。如果iframe与站点位于同一url(同一来源)上,那么您可以替换它“document.getElementsByTagName('a')”和“iframe.contentWindow.getElementsByTagName('a')”是iframe是对iframe元素的引用。如果它不是同一个源,则无法使其工作。