首頁 > 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
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板