首页 > web前端 > js教程 > J计算器

J计算器

Susan Sarandon
发布: 2025-01-01 10:06:11
原创
533 人浏览过

J计算器

(函数(窗口,$,未定义){
(函数() {
var VERSION = '1.0',
插件名称 = '计算器',
autoInitSelector = '.calculator-here',
$body, $calculatorsContainer,
容器构建=假,
基本模板 = ''
'

'
''
''
'',
默认值 = {
 显示模式:'扩展',
            显示图标:假,
            图标:'fa-计算器',
            位置:'左下',
            文本对齐方式:'rtl',
            主题:“材料”,
            按钮样式:空,
            显示方法:'点击',
            显示事件:“焦点”,
            偏移量:12,
            键盘导航:true,
            清除密钥:空,
            plsmnsKey:空,
            percKey:空,
            只读:正确,

            类:'',
            内联:假,
            自动关闭:假,
            // 计算ID: null,

            // 事件
            onInput: 函数() {},
            onResult: 函数() {},
            on选择:'',
            上显示:'',
            隐藏:'',
        },

        计算器;

    var 计算器 = 函数(el, 选项) {
        这个.el = el;
        这.$el = $(el);

        this.opts = $.extend(true, {}, 默认值, 选项, this.$el.data());

        如果($body ===未定义){
            $body = $('body');
        }

        if (this.el.nodeName == 'INPUT') {
            this.elIsInput = true;
        }

        this.inited = false;
        this.visible = false;
        this.silent = false; // 需要防止不必要的渲染

        this.keys = [];



        // this._createShortCuts();
        this.init()
    };

    计算器=计算器;

    计算器.原型 = {
        版本: 版本,
        初始化:函数(){


            if (!containerBuilt && !this.opts.inline && this.elIsInput) {
                this._buildCalculatorsContainer();
            }
            this._buildBaseHtml();

            if (this.elIsInput) {
                if (!this.opts.inline) {
                    // 设置额外的类以进行正确的转换
                    this._setPositionClasses(this.opts.position);
                    this._bindEvents()
                }

                this.$calculator.on('mousedown', this._onMouseDownCalculator.bind(this));
                this.$calculator.on('mouseup', this._onMouseUpCalculator.bind(this));
            }




            if (this.opts.classes) {
                this.$calculator.addClass(this.opts.classes)
            }

            如果(this.opts.keyboardNav){
                this._bindKeyboardEvents();
            }
            // this.opts.calcID = 'jCalc_' Math.floor(Math.random() * 10000000 10000);
            新的 $.fn.calculator.Body(this, '', this.opts);

            this.inited = true;
        },

        /*
        键盘绑定

         */

        _bindKeyboardEvents:函数(){
            this.$el.on('keydown.adp', this._onKeyDown.bind(this));
            this.$el.on('keyup.adp', this._onKeyUp.bind(this));
            this.$el.on('hotKey.adp', this._onHotKey.bind(this));
        },


        _onKeyDown: 函数(e) {
            var 代码 = e.which;
            this._registerKey(代码);

            if ((代码 >= 96 && 代码 
<p>})(窗口,jQuery);</p>


          

            
        
登录后复制

以上是J计算器的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板