<div class="container">
<img src="../themes/mall/img/i_red_ad4.jpg">
<div class="bnt-box">
<a class="openApp" href="javascript:void(0);">打开
</a>
</div>
<div id="cope-box">
<input type="text" id="copyInput" value=""><!-- 用于安卓复制 -->
<p id="coptText"></p><!-- 用于ios复制 -->
</div>
</div>
//复制内容
function copyUrl2(str)
{
console.log(str)
if (isiOS) {
coptText.innerHTML =
str;
var copyDOM = document.querySelector('#coptText');
//要复制文字的节点
var range =
document.createRange();
// 选中需要复制的节点
range.selectNode(copyDOM);
// 执行选中元素
window.getSelection().addRange(range);
// 执行 copy 操作
var successful = document.execCommand('copy'
);
try {
var msg = successful ? 'successful' : 'unsuccessful'
;
console.log('copy is' +
msg);
} catch(err) {
mytip.show({content:'复制失败'
});
}
// 移除选中的元素
window.getSelection().removeAllRanges();
}else{
var oInput = document.getElementById('copyInput'
)
oInput.value =
str;
oInput.select(); // 选择对象
document.execCommand("Copy");
// 执行浏览器复制命令
oInput.blur();//input标签会调起native的输入框需要处理
}
}
//微信平台判断
function isInWx(){
var agent =
window.navigator.userAgent.toLowerCase();
return agent.match(/MicroMessenger/i) == 'micromessenger'
;
}
function startApp(){
//启动APP
if(isInWx()){
//微信中
mytip.show({content:'请在浏览器中打开'
});
}else{
//非微信中
if(isiOS){
//IOS系统,直接去itunes中,既可以下载也可以打开
var ver = (navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/
);
if (ver<9
) {
hasAppTurn("https://itunes.apple.com/。。。。应用市场链接","schema链接"
)
}else{
hasAppTurn("https://itunes.apple.com/。。。。应用市场链接","https://ios通用链接") } }
else{
//android系统,通过定时器的方式,判断是否安装有APP hasAppTurn("安卓下载地址","tps://host_xxxx/tps") } } } } }
//是否有APP跳转
function hasAppTurn(noapp,hasapp){
var hasApp =
true , t = 1000
;
setTimeout(function () {
//没有安装APP则跳转至应用宝下载,延时时间设置为2秒
if(!hasApp) window.location.href =
noapp;
} , 2000
);
var t1 =
Date.now();
window.location.href =
hasapp;
setTimeout(function () {
//t的时间就是出发APP启动的时间,若APP启动了,再次返回页面时t2这行代码执行,hasApp即为true。反之若APP没有启动即为false
var t2 =
Date.now();
hasApp = !(!t1 || t2 - t1 < t + 150
);
} , t);
}
$('.openApp').click(
function(){
startApp()
})
//内容复制
var mytip = new MyDialog({ type:1, content:'' }) var str = '测试下复制'; //点击复制啊 $(window).click(function(){ copyUrl2(str) })
注意:
cope-box内的元素不显示在页面但是不能是hide否则复制不成功ios的通用链接不能是同域名的否则跳转不成功(经测试不同子域名也可以)
转载于:https://www.cnblogs.com/lichuntian/p/9391069.html