我的页面上有一个按钮,可以在默认浏览器中打开页面:
<button type="button" title="view full size in browser" onclick="NewTab()">
view in browser
</button>
<script>
function NewTab() {
window.open(
"https://mypage.aspx", "_blank");
}
</script>
该按钮应该只在页面尚未在浏览器中显示时显示,例如,如果它作为网站选项卡嵌入在Microsoft Teams页面中。
如何检测页面是否在浏览器中显示,然后删除按钮?
团队中没有内置的函数。您必须手动管理这些代码。如果你使用静态选项卡/可配置选项卡,你需要在manifest json内容URL部分添加一个参数,如下所示:
"contentUrl": "<<your base url>>/Demo/?inTeams=true"
在视图文件中添加下面的代码来检测如果parameter为true,则表示它在teams内部;如果参数为false,则表示它在teams外部。
const url = new URL(window.location);
const params = new URLSearchParams(url.search);
if (params.get("inTeams")) {
alert("inside teams");
} else {
alert("inside browser");
}