Show:

bui.unit Class

常用小方法

Methods

between

(
  • val
  • min
  • [max]
)
Boolean

Defined in src/scripts/method/bui.unit.js:1095

Available since 1.6.2

检测值是否在最小最大之间

Parameters:

  • val Number

    [检测的值,可以是数字,也可以是日期]

  • min Number

    [最小值, 默认为0, 比对日期时, 最小值必须传]

  • [max] Number optional

    最大值, 默认为今年的最后一天, 13位数的数字

Returns:

Boolean:

Example:

   // 例子: 
                                                

var bool = bui.unit.between(10,0,100); // 返回true // 例子: var bool = bui.unit.between("2020-5-19","2020-5-1","2020-5-30"); // 返回true

calcHeight

(
  • target
  • height
)

Defined in src/scripts/method/bui.unit.js:790

Available since 1.5.2

利用calc百分比减高度,低版本手机不支持.

Parameters:

  • target Object

    [选择器,例如: ".bui-page"]

  • height String

    [带单位 10px]

Example:

 var $main = $("main");
                                                 var headHeight = $("header").height();
                                                 // 设置main的高度 = 100% - headerHeight 
                                                 bui.unit.calcHeight($main,headHeight)
                                                

debounce

(
  • fn
  • wait
  • scope
)
function

操作结束后才执行,比方正在输入文本,正在移动鼠标,是实时触发的,通过这个方法,可以让它在操作结束才执行;

Parameters:

  • fn function

    [要执行的函数]

  • wait number

    [等待的时间,单位毫秒]

  • scope object

    [函数执行的范围]

Returns:

function:

[description]

Example:

       $("#id").on("scroll",bui.unit.debounce(function(){
                                                           // 滚动结束后才执行
                                                       },400);)
                                                

filterField

(
  • target
  • opt
)

Defined in src/scripts/method/bui.unit.js:848

Available since 1.5.5

由于target会有很多多余字段,所以可以提取一些store需要用的字段就可以。

Parameters:

  • target Object

    [要提取的目标对象]

  • opt Object | Array

    [ 数组时,为要提取的有哪些字段;对象时,如果没有值,则跟数组一致,如果有value,则是相互映射关系,具体查看例子3。]

Example:

   // 例子1: a 为store的初始值,请求后拿到了b 有很多多余数据字段,而实际上只需要一个 test 
                                                

var a = {test:""}; var b = { name:12,test:13,sex:"男"}; var filter = bui.unit.filterField(b,a); // console.log(filter) // 输出 {test: 13}

   // 例子2: a 为要提取的字段,请求后拿到了b 有很多多余数据字段,而实际上只需要一个 test 
                                                

var a = ["test"]; var b = { name:12,test:13,sex:"男"}; var filter = bui.unit.filterField(b,a); // console.log(filter) // 输出 {test: 13}

   // 例子3:
                                                   // dropdown 的数据是 name,value ,接口返回的数据没有 name, value 字段,所以需要转换。
                                                

var dropdownData = {name:"title",value:"id"} var target = { id:12,title:"我是标题",sex:"男"}; var filter = bui.unit.filterField(target,dropdownData); // console.log(filter) // 输出 {name: "我是标题", value: 12}

   // 例子4:
                                                   // dropdown 的数据是 name,value ,接口返回的数据没有 name, value 字段,所以需要转换。
                                                

var dropdownData = {name:"title",value:"id"} var target = [{ id:12,title:"我是标题",sex:"男"},{ id:13,title:"我是标题2",sex:"男"}]; var filter = bui.unit.filterField(target,dropdownData); // console.log(filter) // 输出 [{name: "我是标题", value: 12},{name: "我是标题2", value: 13}]

getAttributes

(
  • target
)

Defined in src/scripts/method/bui.unit.js:943

Available since 1.5.6

获取所有属性及值

Parameters:

  • target Object

    [要提取的目标对象]

Example:

   // 例子1: 获取某个dom的所有属性和值
                                                

var attrs = bui.unit.getAttributes()

mailto

(
  • option
)

发送邮件

Parameters:

  • option Object
    • email String

      [收件人,多个收件人英文逗号分开]

    • cc String

      [抄送,多个收件人英文逗号分开]

    • subject String

      [邮件主题]

    • body String

      [邮件内容]

Example:

     // 收件人带主题
                                                

bui.unit.mailto({ email:"test1@163.com", subject:"Testing" })

pxToRem

(
  • size
)

脚本获取元素大小px的值转换成rem

Parameters:

  • size String

    [ px的值 ]

Example:

 var size = bui.unit.pxToRem(200);
                                                

pxToRemZoom

(
  • size
)

原比例转换,750的元素大小px转换rem单位;

Parameters:

  • size String

    [ px的值 ]

Example:

 var size = bui.unit.pxToRemZoom(200);
                                                

relativePath

(
  • url
  • [path]
)

Defined in src/scripts/method/bui.unit.js:1024

Available since 1.5.6

获取多页相对路径

Parameters:

  • url String

    [提取多页的相对路径]

  • [path] String optional

    默认: "pages" 静态页面的根路径,所有路径都相对当前路径

Example:

   // 例子: 
                                                

var path = bui.unit.relativePath("pages/ui_controls/bui.list") // 在首页 index.html 打开则输出 pages/ui_controls/bui.list , 在二级页面 pages/index.html 打开, 则是ui_controls/bui.list;

remToPx

(
  • size
)

rem的值转换成px

Parameters:

  • size String

    [ rem的值 ]

Example:

 var size = bui.unit.remToPx(2);
                                                

sms

(
  • num
  • content
)

发送短信

Parameters:

  • num string

    [电话号码,多个号码用逗号分割]

  • content string

    [发送的内容]

Example:

 // 发送短信
                                                 bui.unit.sms("10086","CZMM")
                                                

tel

(
  • num
)

拨打电话,单页的a 标签跳转电话无效

Parameters:

  • num number | String

    [电话号码, + 代表是国际电话号码]

Example:

 // 拨打电话
                                                     bui.unit.tel("13800138000")
                                                 // 拨打国际电话
                                                     bui.unit.tel("+13800138000")