Javascript 进阶 面向对象编程 继承的一个例子

文章介绍了两个基于jQuery的自定义编辑器函数PlaceFieldEditor和PlaceAreaEditor的实现,同时分享了作者对于前端开发者自学困境的理解,以及他提供的包含基础到进阶的2024年Web前端开发全套学习资料,强调了体系化学习的重要性。
摘要由CSDN通过智能技术生成

1、第一个效果图代码:

/**

  • Created with JetBrains WebStorm.

  • User: zhy

  • Date: 14-6-7

  • Time: 下午4:55

  • To change this template use File | Settings | File Templates.

*/

/**

  • @param id

  • @param value

  • @param parentEle 父元素

  • @constructor

*/

function PlaceFieldEditor(id, value, parentEle)

{

this.id = id;

this.value = value;

this.parentEle = parentEle;

this.initValue = value ;

this.initElements();

this.initEvents();

}

PlaceFieldEditor.prototype = {

constructor: PlaceFieldEditor,

/**

  • 初始化所有元素

*/

initElements: function ()

{

this.txtEle = $(“”);

this.txtEle.text(this.value);

this.textEle = $(“”);

this.textEle.val(this.value);

this.btnWapper = $(“

”);

this.saveBtn = $(“”);

this.cancelBtn = $(“”);

this.btnWapper.append(this.saveBtn).append(this.cancelBtn);

this.parentEle.append(this.txtEle).append(this.textEle).append(this.btnWapper);

this.convertToReadable();

},

/**

  • 初始化所有事件

*/

initEvents: function ()

{

var that = this;

this.txtEle.on(“click”, function (event)

{

that.convertToEditable();

});

this.cancelBtn.on(“click”, function (event)

{

that.cancel();

});

this.saveBtn.on(“click”, function (event)

{

that.save();

});

},

/**

  • 切换到编辑模式

*/

convertToEditable: function ()

{

this.txtEle.hide();

this.textEle.show();

this.textEle.focus();

if(this.getValue() == this.initValue )

{

this.textEle.val(“”);

}

this.btnWapper.show();

},

/**

  • 点击保存

*/

save: function ()

{

this.setValue(this.textEle.val());

this.txtEle.html(this.getValue().replace(/\n/g,“
”));

var url = “id=” + this.id + “&value=” + this.value;

// alert(url);

console.log(url);

this.convertToReadable();

},

/**

  • 点击取消

*/

cancel: function ()

{

this.textEle.val(this.getValue());

this.convertToReadable();

},

/**

  • 切换到查看模式

*/

convertToReadable: function ()

{

this.txtEle.show();

this.textEle.hide();

this.btnWapper.hide();

},

setValue: function (value)

{

this.value = value;

},

getValue: function ()

{

return this.value;

}

}

;

    • 张三:
    • 李四:
    • 王二:
    • 嗯,代码就不详细说了,都比较简单,使用了jQuery,如果不喜欢可以使用原生js,本人比较喜欢把jQuery当作js的工具使用。

      2、第二个效果图的js代码:

      /**

      • Created with JetBrains WebStorm.

      • User: zhy

      • Date: 14-6-7

      • Time: 下午5:34

      • To change this template use File | Settings | File Templates.

      */

      function PlaceAreaEditor(id, value, parentEle)

      {

      PlaceAreaEditor.superClass.constructor.call(this, id, value, parentEle);

      }

      extend(PlaceAreaEditor, PlaceFieldEditor);

      PlaceAreaEditor.prototype.initElements = function ()

      {

      this.txtEle = $(“”);

      this.txtEle.text(this.value);

      this.textEle = $(“”);

      this.textEle.text(this.value);

      this.btnWapper = $(“

      ”);

      this.saveBtn = $(“”);

      this.cancelBtn = $(“”);

      this.btnWapper.append(this.saveBtn).append(this.cancelBtn);

      自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

      深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

      因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

      img

      既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

      如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

      最后

      资料过多,篇幅有限,需要文中全部资料可以点击这里免费获取前端面试资料PDF完整版!

      自古成功在尝试。不尝试永远都不会成功。勇敢的尝试是成功的一半。

      进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!**

      [外链图片转存中…(img-h86iB5rC-1713499892898)]

      由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

      如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

      [外链图片转存中…(img-NISDQcpR-1713499892898)]

      最后

      [外链图片转存中…(img-Z9hpaiuQ-1713499892899)]

      [外链图片转存中…(img-TEQNFpdd-1713499892899)]

      资料过多,篇幅有限,需要文中全部资料可以点击这里免费获取前端面试资料PDF完整版!

      自古成功在尝试。不尝试永远都不会成功。勇敢的尝试是成功的一半。

    • 20
      点赞
    • 9
      收藏
      觉得还不错? 一键收藏
    • 0
      评论
    评论
    添加红包

    请填写红包祝福语或标题

    红包个数最小为10个

    红包金额最低5元

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

    抵扣说明:

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

    余额充值