web页面的一些事件以及相关实验(3)

这次的实验,针对的是页面error处理的

<html>

<head>
    <style>
        .container {
            border: 1px solid gray;
            margin: auto;
            max-width: 600px;
            height: 600px;
            display: grid;
            grid-template-columns: repeat(6, 1fr);
            grid-template-rows: repeat(6, 1fr);
        }
        
        .container>div {
            display: inline;
            background-color: pink;
            box-sizing: border-box;
        }
        
        .container>div:nth-child(1) {
            grid-column-start: 2;
            grid-column-end: 4;
            grid-row-start: 2;
            grid-row-end: 4;
            margin-right: 2px;
        }
        
        img.err {
            display: none;
        }
    </style>
    <script>
    </script>
    <script src="https://cdn.bootcss.com/vue/2.6.101/vue.min.js"></script>
    <script>
        window.addEventListener('error', (e) => {
            let {
                target
            } = e

            let ec = Object.getPrototypeOf(e).constructor
            if (ec == Event) {
                let type = target.nodeName.toLowerCase()
                console.log(type)
            } else if (ec == ErrorEvent) {
                console.log(e.message)
            }
        }, true)
    </script>
</head>

<body>
    <script>
        console.log(2)
    </script>
    <div class="container">
        <div>1</div>
        <div>2</div>
        <div>3</div>
        <div>4</div>
        <div>
            <img src="https://user-gold-cdn.xitu.io/2019/9/17/16d3e878fdsa371125e0?imageView2/1/w/120/h/120/q/85/format/webp/interlace/1" onload="console.log('img loaded')" />
        </div>
    </div>
     <script>
        setTimeout(()=>{
            console.log(varNotExits.pro);
        },1000)
    </script>
</body>

</html>

其他语言,有全局捕获异常的方式,web里面有没有呢,经过一番查找发现也是有的

以下链接是文档描述 https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onerror

 

Error事件当js运行时异常,或者资源错误(img或者script)加载失败  会被抛出,使用window.addEventListener('error',fn)去捕捉

但是我实验了下,资源异常,使用window.addEventListener('error',fn)捕捉不到。再仔细看看了描述,mdn上有述资源异常,window.addEventListener('error',fn,useCapture)去捕捉

addEventListener文档描述如下

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener

 

最终如上面code所示,意在处理,脚本加载错误,图片加载错误,运行时错误(如访问不存在变量)。。。

发现我们捕获到了img加载错误,以及运行时错误,但是脚本错误没有捕获到,为什么?因为脚本放置顺序在注册error事件之前,换下位置就可以了。

 

这里又有个tip了,比如在这里可以做个统一的错误上报处理,或者图片加载失败替换为默认暂未图等操作,发挥舞台很大

 

 

购物网站的首页设计是非常重要的,因为它是用户进入网站的第一印象。在设计首页时,我们应该考虑以下几个方面: 1. 页面布局:首页的布局应该简洁明了,使用户能够快速找到他们感兴趣的商品或相关信息。通常使用网站的标志和导航菜单作为页面的主要元素,方便用户浏览网站的不同部分。 2. 高品质图片:购物网站通常会显示商品的图片,所以我们应该选择高品质的图片。这将有助于提升网站的专业性和吸引力,同时也可以帮助用户更好地了解商品的外观和特性。 3. 搜索功能:在首页上添加搜索框是一个好的设计选择。这样用户可以直接在首页上进行商品的搜索,提高用户的搜索效率和体验。 4. 推荐商品和促销信息:首页上可以展示一些热门或推荐的商品,以吸引用户的注意力。同时,我们还可以在首页上宣传一些促销活动或优惠信息,以刺激用户的购买欲望。 登录页面是用户进行购物网站登录和注册的重要界面,设计时需要注意以下几个方面: 1. 界面简洁:登录页面应该尽量简洁,减少冗余内容。只需要展示用户名和密码输入框,同时提供一个登录按钮和注册链接即可。 2. 用户友好的交互:登录页面应该具备友好的用户交互,给用户提供简单明了的登录流程。在输入框中添加合适的提示信息,如"请输入用户名"和"请输入密码",以帮助用户正确地输入信息。 3. 注册选项:登录页面一般都提供注册选项,用户可以通过点击注册链接跳转到注册页面进行注册。在登录页面上,可以添加一个用户注册的链接,方便用户进行注册。 4. 安全性:购物网站登录页面需要保证用户信息的安全性。所以,我们需要使用合适的安全技术,如SSL加密和用户验证等,来保护用户的账号和密码。 总之,购物网站的首页和登录页面设计需要兼顾美观和用户体验。通过简洁清晰的布局、高品质的图片和友好的交互方式,能够吸引用户的访问,并提供便捷的登录和注册流程,增强购物网站的功能和用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值