美文网首页
jquery的showToast方法

jquery的showToast方法

作者: 读书的鱼 | 来源:发表于2019-04-27 18:15 被阅读0次

前序介绍

我们经常在开发过程中需要一个提示信息,总不能给用户弹个alert吧,网上有大量的不错的第三方库:
如果你是jquery项目的话: jquery-toast-plugin
如果你是react项目的话:react-toastify
如果你是Vue项目的话:vue-toasted

还有react的antd的message组件
还有vue的element的message组件
......

上面的库封装的都不错,也很完善,唯一不足就是你需要下载他们,引入他们才能使用,如果是一个简单的我觉得没有必要引入体积这么庞大的第三方的库,还不如自己花时间写一个简单的方法,满足自己项目的需求即可:体积小,便于调用。

1.代码演示

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>ShowToast</title>
  <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css">
  <script src="https://cdn.bootcss.com/jquery/3.4.0/jquery.min.js"></script>
  <style>
    #showToastWraper {
      position: fixed;
      z-index: 999;
      top: 35%;
      right: 0;
      left: 0;
      width: 90%;
      margin: auto;
      background: rgba(0, 0, 0, 0.6);
      filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#7f000000, endColorstr=#7f000000);
      text-align: center;
      padding: 10px 20px;
      color: #dcdcdc;
      border-radius: 50px;
    }
  </style>
</head>

<body>
  <button id="show" class="btn btn-primary">showToast</button>

  <script>

    function showToast(text, width, radius) {
      var widthDiv = width ? width : '90%';//自定义宽度
      var radiusDiv = radius ? radius : '50px';//自定义边框角度
      //此处你还可以定义 位置、文字颜色大小、背景色、显示时长等等

      var showToastDiv = "<div id='showToastWraper'></div>";
      var showToastWraper = $("#showToastWraper");
      var isExat = showToastWraper.length;

      if (!isExat) {
        //第一次创建元素 并且设置元素把显示状态的停止掉、渐隐显示、显示文本内容、设置自定义样式、1.5s后渐隐消失
        $(document.body).append(showToastDiv);
        $("#showToastWraper").stop().fadeIn(300).html(text).css({ width: widthDiv, borderRadius: radiusDiv }).delay(1500).fadeOut(500);
      } else {
        //第二次 就不需要创建元素了减少dom操作
        showToastWraper.stop().fadeIn(300).html(text).css({ width: widthDiv, borderRadius: radiusDiv }).delay(1500).fadeOut(500);
      }
    }

    $("#show").on("click", function () {
      showToast('显示文本内容显显示文本内容显'); //默认显示的样式
      // showToast('显示文本内容显显示文本内容显', '90%', '50px'); //可以更改宽度、边框角度等等
    })
  </script>
</body>

</html>

所以自己抽时间写了一个简单的showToast,演示效果


效果

2.注意事项

1)需要借助jquery
2)bootstrap 可以不用的 我只是为了想演示按钮好看一些罢了

3.仓库地址

query-showToast

这个demo呢是动态创建<div id='showToastWraper'></div>
在仓库里面我还有一个demo格式,只不过是在页面写的一个公共的<div id='showToastWraper'></div>不是手动创建的,而且也没有对宽度、边框角度进行处理,如果你项目的showToast是一个固定你也可以把自己的变量写死,那么灵活性上就大大的打些折扣。

相关文章

  • jquery的showToast方法

    前序介绍 我们经常在开发过程中需要一个提示信息,总不能给用户弹个alert吧,网上有大量的不错的第三方库:如果你是...

  • jquery.data()&jquery.extend()

    JQuery.data()方法 Jquery提供的在节点存取数据的方法。 JQuery.extend()方法 Jq...

  • jQuery

    jQuery语法: jQuery获取内容和属性 : AJAX load()方法: jQuery ajax() 方法...

  • jQuery 链式调用,触发事件

    jquery链式调用: jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以...

  • jquery链式调用及动画、触发事件

    jquery链式调用: jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以...

  • 链式调用及动画、触发事件

    jquery链式调用: jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以...

  • 15_day jQuery 链式调用及动画、触发事件

    jquery链式调用: jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以...

  • js链式调用 动画

    jquery链式调用: jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以...

  • js链式调用 动画

    jquery链式调用: jquery对象的方法会在执行完后返回这个jquery对象,所有jquery对象的方法可以...

  • jQuery.extend 函数使用详解

    jQuery.extend 函数使用详解 JQuery的extend扩展方法:Jquery的扩展方法extend是...

网友评论

      本文标题:jquery的showToast方法

      本文链接:https://www.haomeiwen.com/subject/lsjcnqtx.html