注意的是:引入jquery的代码最好放在html文件中,本文是为了说明seajs中require如何使用的,才将jquery放入seajs中的。

html中对应的代码:

<script type="text/javascript" src="../js/lib/sea.js"></script><!--这里一定要引入sea.js下面才能使用seajs.use()函数-->
<script type="text/javascript">
seajs.use(['../js/zyl'],function(init) {
init();
});
</script>

(注意的是

function(init)中的参数init

对应的js代码:

define(function(require, exports, module){
require('./lib/jquery.min');//该模块需要引入的js文件。使用require来引入,这样的好处是需要这些js文件时才引入,而不是一开始就全部放在html中引入
function bindEvents(){ //编写核心函数代码
$('.zuobiaoxi td').click(function() { //前提是html中需要引入jquery
$(this).addClass('td_curr').siblings().removeClass('td_curr').parents().siblings().find('td').removeClass('td_curr');
$(this).find('.round').addClass('curr').parents().siblings().find('.round').removeClass('curr');
});
}
var init = function(){
bindEvents();
}
module.exports = init;
})

这里的

seajs.use(['../js/zyl'],function(init) {

    });

就是引入了zyl.js文件,运行zyl.js文件。如果函数中不写init();那么对应的zyl.js文件就要执行init函数()

define(function(require, exports, module){
require('./lib/jquery.min');//该模块需要引入的js文件。使用require来引入,这样的好处是需要这些js文件时才引入,而不是一开始就全部放在html中引入
function bindEvents(){ //编写核心函数代码
$('.zuobiaoxi td').click(function() { //前提是html中需要引入jquery
$(this).addClass('td_curr').siblings().removeClass('td_curr').parents().siblings().find('td').removeClass('td_curr');
$(this).find('.round').addClass('curr').parents().siblings().find('.round').removeClass('curr');
});
}
var init = function(){
bindEvents();
}
init();//这里做了改动
})

此外,还可以在zyl.js中写多个函数,然后使用

module.exports = dialog;来向外提供接口,这样在html中引入的js中就可以直接使用dialog();执行。(如果不写
module.exports = dialog;)则,html中写dialog()不再起作用。

则js代码为:
define(function(require, exports, module){
require('./lib/jquery.min.js');
function bindEvents(){ //编写核心函数代码
$('.zuobiaoxi td').click(function() { //前提是html中需要引入jquery
$(this).addClass('td_curr').siblings().removeClass('td_curr').parents().siblings().find('td').removeClass('td_curr');
$(this).find('.round').addClass('curr').parents().siblings().find('.round').removeClass('curr');
});
} var init = function(){
bindEvents();
}
var dialog=function(){
alert('hello');
}
module.exports = init;
//或者使用init();
module.exports = dialog;
})

对应的html代码为:

<script type="text/javascript" src="../js/lib/sea.js"></script><!--这里一定要引入sea.js下面才能使用seajs.use()函数-->
<script type="text/javascript">
seajs.use(['../js/zyl.js'],function(init) {
init();
dialog();
});
</script>

使用seajs来引入js代码的更多相关文章

  1. 动态引入js代码

    var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = & ...

  2. 页面中引入js的几种方法

    通常大家最为熟悉的是一下两种方法: 在页面中直接写入<script type="text/javascript">js代码</script>. 在页面中引入 ...

  3. html文件在head标签中引入js地址和直接写js代码,所用时间是不同的,因为引入js地址,文件加载的时候需要通过通讯协议去解析地址,读取外部文件

    html文件在head标签中引入js地址和直接写js代码,所用时间是不同的,因为引入js地址,文件加载的时候需要通过通讯协议去解析地址,读取外部文件

  4. Vue-cli构建项目, 组件中js代码引入图片路径问题

    问题描述 .vue的组件分成三个部分, template结构部分, script路径代码, style页面样式 首先, 我们可以在template可以正确引入, 无论是dev, 还是build都没有问 ...

  5. js代码中引入其他js文件

    /***引入 js 文件 @example: import('js/aui.picker.js') @example: import(['js/aui.picker.js', 'css/aui.pic ...

  6. 浏览器控制台js代码与后台不同步

    原因:浏览器会缓存js 如果是将js代码直接通过<script>标签插入jsp页面中则不存在这个问题 在加载页面的时候会重新加载js代码 如果直接将js代码以文件的形式引入,那么每次在修改 ...

  7. js封装的三级联动菜单(使用时只需要一行js代码)

    前言 在实际的项目开发中,我们经常需要三级联动,比如省市区的选择,商品的三级分类的选择等等. 而网上却找不到一个代码完整.功能强大.使用简单的三级联动菜单,大都只是简单的讲了一下实现思路. 下面就给大 ...

  8. Edge.js:让.NET和Node.js代码比翼齐飞

    通过Edge.js项目,你可以在一个进程中同时运行Node.js和.NET代码.在本文中,我将会论述这个项目背后的动机,并描述Edge.js提供的基本机制.随后将探讨一些Edge.js应用场景,它在这 ...

  9. JS动态引入js,CSS——动态创建script/link/style标签

    一.动态创建link方式 我们可以使用link的方式.如下代码所示. 二.动态创建style方式 但是,这样的话,需要加载整个css文件,但是那样有可能浪费一个http请求并占用一个服务器请求数,并等 ...

随机推荐

  1. Emacs+highlight-parentheses高亮括号

    EmacsWiki上关于它的介绍HighlightParentheses,下载最新版请通过作者的GitHub:https://github.com/nschum/highlight-parenthes ...

  2. Interview----求 1+2+...+n, 不能用乘除法、for、while if、else、switch、case 等关键字以及条件判断语句 (A?B:C)

    题目描述: 求 1+2+...+n, 要求不能使用乘除法.for.while.if.else.switch.case 等关键字以及条件判断语句 (A?B:C). 分析: 首先想到的是写递归函数,但是遇 ...

  3. C语言基础:进制转换,变量,常量,表达式,基本数据类型,输出函数,输入函数,运算符. 分类: iOS学习 c语言基础 2015-06-10 21:39 25人阅读 评论(0) 收藏

    二进制:以0b开头,只有0和1两种数字.如0101 十进制:0~9十个数字表示.如25 十六进制:以0~9,A~F表示,以0X开头.如0X2B 十进制转换为X进制:连除倒取余 X进制转换为十进制:按权 ...

  4. 如何编写一个编译c#控制台应用程序的批处理程序

    如何编写一个编译c#控制台应用程序的批处理程序 2011-03-22 18:14 dc毒蘑菇 | 浏览 579 次 最近在网上看了一个教程,是学C#的,但是我的机子上装不上vs,所以想写一个批处理来编 ...

  5. turn.js实现翻书效果

    JS插件网 http://www.ijquery.cn/?p=173 描述:Turn.js 是一个轻量级的 (15kb) jQuery/html5 插件用来创建类似书本和杂志翻页效果,支持触摸屏设备. ...

  6. Giew与checkBox的结合

    <asp:TemplateField >                                <ControlStyle Width="20px"  / ...

  7. js获取非行内样式

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. TC Hash Filter

    Overview The u32 filter allows you to match on any bit field within a packet, so it is in some ways ...

  9. 十 SSH

    一 Struts 1. 定义:该框架使用 MVC 设计模式开发程序 2. 框架概览: 二 Hibernate 1. 作用:提供了利用面向对象的思想来操作关系型数据的接口 2. 框架图示: 三 Spri ...

  10. Bean实例化(Spring源码阅读)-我们到底能走多远系列(33)

    我们到底能走多远系列(33) 扯淡: 各位:    命运就算颠沛流离   命运就算曲折离奇   命运就算恐吓着你做人没趣味   别流泪 心酸 更不应舍弃   ... 主题: Spring源码阅读还在继 ...