谷姐:我们都是谷歌迷
We are all Google fans

50元求份JS判断代码-白龙君

Rate this post

需要一段JS代码判断浏览器是否支持显示webp,如果支持就加载外部1.js否则加载2.js

热议
推荐楼 Salta
把console.log("支持");或console.log("不支持"); 改成输出你的JS就行了

3楼 蒂姆·库克 昨天17:35

https://blog.csdn.net/weixin_33695450/article/details/89626831

然后自个改改代码就行

4楼 572149705 昨天17:35

var isSupportWebp = function () {
try {
return document.createElement('canvas').toDataURL('image/webp', 0.5).indexOf('data:image/webp') === 0;
} catch(err) {
return false;
}
}

isSupportWebp()

function check_webp_feature(feature, callback) {
var kTestImages = {
lossy: "UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",
lossless: "UklGRhoAAABXRUJQVlA4TA0AAAAvAAAAEAcQERGIiP4HAA==",
alpha: "UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA==",
animation: "UklGRlIAAABXRUJQVlA4WAoAAAASAAAAAAAAAAAAQU5JTQYAAAD/////AABBTk1GJgAAAAAAAAAAAAAAAAAAAGQAAABWUDhMDQAAAC8AAAAQBxAREYiI/gcA"
};
var img = new Image();
img.onload = function () {
var result = (img.width > 0) && (img.height > 0);
callback(feature, result);
};
img.onerror = function () {
callback(feature, false);
};
img.src = "data:image/webp;base64," + kTestImages[feature];
}

const supportsWebp = ({ createImageBitmap, Image }) => {
if (!createImageBitmap || !Image) return Promise.resolve(false);

return new Promise(resolve => {
const image = new Image();
image.onload = () => {
createImageBitmap(image)
.then(() => {
resolve(true);
})
.catch(() => {
resolve(false);
});
};
image.onerror = () => {
resolve(false);
};
image.src = 'data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAAAAAAfQ//73v/+BiOh/AAA=';
});
};

const webpIsSupported = () => {
let memo = null;
return () => {
if (!memo) {
memo = supportsWebp(window);
}
return memo;
};
};

webpIsSupported()().then(res => {
console.log("是否支持 webp", res)
}).catch(err => {
console.log(err)
})

5楼 everdale 昨天17:36

一搜一堆,5毛钱流量就够

6楼 白龙君 昨天17:36

把console.log("支持");或console.log("不支持"); 改成输出你的JS就行了

妈的我眼瞎了,谢谢老哥我试试,可以了我私你。

7楼 572149705 昨天17:37

var isSupportWebp = function () {
try {
return document.createElement('canvas').toDataURL('ima ...

改改这种还要花钱吗百度阿铁铁

8楼 xuhao0080 昨天17:37

https://cl1p.net/jsin
很简单的解决方法
stackoverflow找的

9楼 白龙君 昨天17:51

把console.log("支持");或console.log("不支持"); 改成输出你的JS就行了

直接填js地址不行啊

10楼 Salta 昨天17:54

直接填js地址不行啊

https://zhidao.baidu.com/question/718506054538000445.html

12楼 白龙君 昨天18:05

https://zhidao.baidu.com/question/718506054538000445.html

是1替换外部地址吗?

13楼 Salta 昨天18:17

是1替换外部地址吗?

https://cl1p.net/opr上面那部分不变 试试这个!

14楼 hostloccom 昨天18:20

还需要吗?正好做过

15楼 白龙君 昨天18:23

https://cl1p.net/opr上面那部分不变 试试这个!

报错了

"); }else{ document.write(" "); } });

试试这段引用代码js/ok.js 依旧改成你的链接

17楼 白龙君 昨天18:42

试试这段引用代码js/ok.js 依旧改成你的链接

WebpIsSupported(function(isSupported){
if(isSupported){
var script = document.createElement('script');
script.setAttribute('type','text/javascript');
script.setAttribute('src','ok.js');
document.getElementsByTagName('head')[0].appendChild(script);
}else{
var script = document.createElement('script');
script.setAttribute('type','text/javascript');
script.setAttribute('src','ok2.js');
document.getElementsByTagName('head')[0].appendChild(script);
}
});

这样吗?还是不生效

18楼 Salta 昨天18:44

这样吗?还是不生效

改成你的链接了吗?

19楼 白龙君 昨天18:50

改成你的链接了吗?

。。肯定改了啊

20楼 Salta 昨天18:53

。。肯定改了啊

那我没办法了,你如果是php程序的话去php那边判断吧, JS我这边判断没问题,你那边不知道咋回事,你外部链接不行的话你把它下载到本地,本地引入试试,我这边本地引入都没问题的

22楼 Salta 昨天18:58

我看网络请求加载了JS地址,但是没有被执行。
直接引用没问题。

嗯,可能是跨域问题...

23楼 wise指南 昨天19:00

var isSupportWebp = function () {
try {
return document.createElement('canvas').toDataURL('image/webp', 0.5).indexOf('data:image/webp') === 0;
} catch(err) {
return false;
}
}

isSupportWebp()

老哥这样写可以调用JS并执行,但是为啥页面被清空了。

25楼 华为任正非 昨天21:57

现在不都支持webp了吗……

试试
或者看看控制台有没有报错 F12

参考:https://www.w3school.com.cn/jquery/ajax_getscript.asp

27楼 白龙君 昨天23:26

可以直接执行试试
或者看看控制台有没有报错 F12

不行,搞不定了。

28楼 wxrpass 26分钟前

如果网站程序是php写的的话为什么不用php解决呢?

申明:本文内容由网友收集分享,仅供学习参考使用。如文中内容侵犯到您的利益,请在文章下方留言,本站会第一时间进行处理。

未经谷姐允许不得转载:谷姐靓号网 » 50元求份JS判断代码-白龙君
分享到: 生成海报

热门文章

评论 抢沙发

评论前必须登录!

立即登录   注册

买Google Voice认准【谷姐靓号网】

Google Voice靓号列表Google Voice自助购买
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活