问一下为什么要分开index.js和search.js来写

问一下为什么要分开index.js和search.js来写

http://img1.sycdn.imooc.com//climg/5ebaae98091e1e6619221008.jpg

http://img1.sycdn.imooc.com//climg/5ebaaecb09bd8ec414330786.jpg


我不太明白为什么要分开两个地方写js文件。打个比方比如这个代码,图二的代码直接把功能写好在图1方框内就好了吗? 这样直接search.js 直接就封装好 这个搜索框的功能。然后 直接在index.js里面传参(options)不是更方便么? 之前学的导航栏 好像也是这样给index.js 调用dropdown.js封装好的插件?


正在回答

登陆购买课程后可参与讨论,去登陆

4回答

同学你好,search是自定义的,但是使用了$.fn.extend方法,此方法用于为jQuery的原型添加新的属性和方法。那么后续通过jQuery对象就可以调用它们了。

http://img1.sycdn.imooc.com//climg/5ebb8cb20948d22b05570104.jpg

祝学习愉快~

提问者 陈立天 2020-05-13 10:57:37

search是放在jq原型上的方法? 这个search不是自定义的方法吗?

http://img1.sycdn.imooc.com//climg/5ebb621d09ad94eb13201347.jpg

好帮手慕言 2020-05-13 10:54:04

同学你好,关于同学的疑问,解答如下:

1、search.js可以理解为是一个插件。主要会在index.js中调用。两个文件分开,会更清晰。

2、search是jq原型上的方法。$headerSearch.search()是调用jq原型上的search方法,

第一个参数(setInputVal)是需要调用的方法,第二个参数($(this).html())是需要传递的参数。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

提问者 陈立天 2020-05-12 23:01:07

http://img1.sycdn.imooc.com//climg/5ebab9ec09ff3bd219890401.jpg

还有问下 我不太理解这个是什么意思。。

意思是调用的是search.js里的search方法? 然后在给search方法里传入 左边和右边的参数??

  • 提问者 陈立天 #1
    或者说search(‘setInputVal’,$(this).html()) 的意思是 调用search.js当中search构造函数下的 setInputVal 然后给setInputVal这个方法传入val值$(this).html()这样理解对吗? 所以 构造函数下的方法的调用 就是 构造函数名称后面加括号 然后第一个参数是构造函数的方法名字,第二个参数或者后面跟着的就是参数?
    2020-05-12 23:05:46
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师