gpt4 book ai didi

javascript - window.open ('' , '_blank' ) 仅在 iOS 上不打开新标签

转载 作者:行者123 更新时间:2023-12-04 15:26:40 29 4
gpt4 key购买 nike

我用 _blank 调用了 window.open,它适用于除 iOS 之外的所有浏览器。在我的网络应用程序中,当我在 iOS 设备上单击“添加到购物车”按钮时,什么都没有发生,而在所有其他浏览器中,会打开一个新窗口。

const addProducts = (products) => {
setProductsAdded(false);
cService
.add(products)
.then(() => {
setLoading(null);
setProductsAdded(true);
window.open(C_LINK, '_blank');
})
.catch(() => {
setError('Error');
});
};

我发现了这个问题和答案,这似乎是同一个问题 - 但我是 Javascript 新手,不完全确定如何实现它: window.open(url, '_blank'); not working on iMac/Safari

所以我的第一个问题是,我是否认为我刚才提到的问题和答案可能是同一个问题?我的第二个问题是,如果我要尝试实现上一个问题中提到的解决方案,我会修改现有功能还是将其分开?我将在哪里设置 window.open()?有人可以解释一下“myService”到底是什么吗?谢谢您的帮助。

最佳答案

我以前没有尝试过,但是从 SO 答案实现解决方案如下所示:

// Open a new window and save a reference to it
var newWindow = window.open();

const addProducts = (products) => {
setProductsAdded(false);
cService
.add(products)
.then(() => {
setLoading(null);
setProductsAdded(true);

// Set the URL of the new window
newWindow.location = C_LINK;
})
.catch(() => {
setError('Error');
});
};

在另一篇文章中, myService是一个不存在的示例服务,它返回一个 URL。

关于javascript - window.open ('' , '_blank' ) 仅在 iOS 上不打开新标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62107827/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com