简易juqery的书写

手写一个简易的jquery

Jquery虽然作为一个JS库因为MVVM结构出现,目前使用不多 ,但是对于JS的提升还是又很大的帮助的,接下来我门手写一个简易jquery
//创建Jqery类 拿到所有符合类

    class jquery{
        constructor(seletor){
            const result= document.querySelectorAll(seletor)
            for(let i=0  ;i<result.length;i++){
                this[i]=result[i]

            }
            this.length=result.length
            this.seletor=seletor
        }
    //获取该数组下某一DOM结构方法
      get(index){
          return this[index]

      }    

      //选取所有元素  
      each(fn){
          for(let i=0; i<this.length;i++ ){
              let elem=this[i]
              console.log(elem)
              fn(elem)
          }
      }
      // 为元素添加 事件
      on(type,fn){
          return this.each((elem=>{
              elem.addEventListener(type,fn,false)
          }))
      }
      
    }
    const $p=new jquery('p')
    
      
    console.log($p)
    console.log($p.each)
    $p.each((elem)=>{
        console.log(elem.innerHTML)
    })
    $p.on('click' ,(e)=>{
        console.log(e.target.innerHTML)
    })
    
    //  $是通过封装一个函数   
    var $=function(seletor){
        return new jquery(seletor)
    }

目前简易类 未考虑插件的使用

如有错误大家多多指教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
jQuery实现简易计算器是一个常见的前端开发练习,通常使用JavaScript和jQuery库来增强用户界面的交互性。以下是一个简单的步骤来创建一个基本的加减乘除计算器: 1. 引入jQuery:首先在HTML文件中引入jQuery库,因为我们将利用其事件处理和DOM操作功能。 ```html <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> ``` 2. HTML结构:定义计算器的HTML布局,包括数字按钮、运算符按钮和结果显示区域。 ```html <div id="calculator"> <input type="text" id="display" disabled> <div class="buttons"> <!-- 数字按钮 --> <button>1</button> <button>2</button> <button>3</button> <!-- ... --> <button>.</button> <button>=</button> <!-- 运算符按钮 --> <button>+</button> <button>-</button> <button>*</button> <button>/</button> </div> </div> ``` 3. jQuery代码:添加事件监听器来处理点击事件,根据按钮类型执行相应的计算或更新显示。 ```javascript $(document).ready(function() { // 获取显示元素 const display = $('#display'); // 遍历数字按钮 $('.buttons button').click(function() { const value = $(this).text(); if (!isNaN(value)) { // 如果是数字 display.val(display.val() + value); } else { // 如果是运算符 display.val(display.val() + ' ' + value); // 保留空格,以便显示运算符 } }); // 处理等于号按钮 $('#=').click(function() { try { const result = eval(display.val()); display.val(result); } catch (error) { display.val("Error"); } }); }); ``` 4. 注意事项: - 使用`eval()`函数存在安全风险,因为它会执行任意的JavaScript代码。在实际应用中,应采用更安全的方式(如设计一个解析器)来处理用户输入。 - 上述代码没有处理清除、小数点和括号等功能,这将增加实现的复杂性,但基本思路类似。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值