创建视图

同前面创建模型和集合的方式一样,Backbone.View.extend()即可创建视图

var UserView=Backbone.View.extend();
var view1=new UserView();


生成的实例是这样一个对象,el应该是js原生的对象,$el应该是jQuery对象,很方便,不需要我再去$(el)。
验证一下:

view1.el.innerText="111";
//"111" view1.$el
//[<div>​111​</div>​]
view1.$el.data('ck',1)
//[<div>​111​</div>​]

可以看到生成的对象,默认标签是div。
我们可以自己指定这些:比如className id tagName

var view2=new UserView(
{
'tagName':'i',
'className':'next',
'id':'slide_btn'
}
);

如果想要将视图绑定到页面已存在的元素中

var UserView=Backbone.View.extend();
var view3=new UserView({
el:$('.d1')
}); view3.el
//<div class="d1">这里</div>

上面都是在实例化的时候传参,也可以在extend时传参:

var UserView=Backbone.View.extend({'id':'search','className':'btn btn_search','tagName':'a'});
var view5=new UserView();

渲染视图

var ListView = Backbone.View.extend({
tagName : 'input',
className : 'btn',
id : 'search',
attributes : {
type : 'submit',
value:''
},
render : function() {
this.el.value = '搜索';
document.body.appendChild(this.el);
}
});
var listview = new ListView();
listview.render();

生成的DOM元素如下:
<input type="submit" value="搜索" id="search" class="btn">

前端模板,先略过~~~

Backbone学习记录(3)的更多相关文章

  1. Backbone学习记录(7)

    事件委托 <form> <input type="text" class="txt"> <input type="but ...

  2. Backbone学习记录(6)

    路由 backbone将路由规则和一个方法名绑定到一起,来控制单页的hash,以及单页的前进后退. var UserRouter = Backbone.Router.extend({ routes: ...

  3. Backbone学习记录(5)

    数据与服务器 var User=Backbone.Model.extend({ defaults:{ name:'susan', age:18 }, url:'/user'//数据提交的路径 }); ...

  4. Backbone学习记录(4)

    事件绑定  on()方法 调用格式:object.on(event, callback, [context])"change" — 当attributes变化时"chan ...

  5. Backbone学习记录(2)

    创建一个集合 1)new Backbone.Collection()方式 var user=new Backbone.Model({'name':'susan'}); var list=new Bac ...

  6. Backbone学习记录(1)

    去年买的<基于MVC的javascript Web富应用开发>,拖到现在还没看完,作者介绍了三个MVC框架,Spine ,backbone和javascriptMVC.1和2在国内的流行度 ...

  7. Backbone 学习笔记

    Backbone 是一款基于模型-视图-控制器 MVC 模式的轻量级javascript 框架 ,可以用来帮助开发人员创建单页Web应用. 借助Backbone 我们可以使用REST的方式来最小化客户 ...

  8. Quartz 学习记录1

    原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...

  9. Java 静态内部类与非静态内部类 学习记录.

    目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...

随机推荐

  1. 把node加入master节点时,日志内容分析

    root@node1:~# kubeadm --token bggbum.mj3ogzhnm1wz07mj --discovery-token-ca-cert-hash sha256:8f02f833 ...

  2. 使用libcurl的包装库cpr发起http请求

    cpr GitHub地址https://github.com/whoshuu/cpr 简单示例:cpr_http_request.cpp #include <iostream> #incl ...

  3. 文件批量转换成UTf-8

    yum install -y enca 在文件夹根目录下面创建文件:iconv_shell.sh 里面填写下面的内容: #!/bin/bash for file in `find ./ -name ' ...

  4. java 获取时间戳

    //java 获取时间戳 long currentTime=System.currentTimeMillis();

  5. Jmeter性能测试-GC相关

    1.GC相关 HotSpot虚拟机将其物理上划分为两个–新生代(young generation)和老年代(old generation).新生代(Young generation): 绝大多数最新被 ...

  6. android提权漏洞CVE-2010-EASY修复【转】

    本文转载自: http://blog.csdn.net/lhj0711010212/article/details/9351131 android提权漏洞CVE-2010-EASY修复   linux ...

  7. js判断字符串是否包含某个字符串

    String对象的方法 1,indexOf() (推荐) 方法可返回某个指定的字符串值在字符串中首次出现的位置.如果要检索的字符串值没有出现,则该方法返回 -1 var str = "123 ...

  8. Nhibernate开发中遇见的问题列表

    1.No persister for: LantrackCommon.pentity.BASESTANDARD 解答修改方法:我的是因为映射关系文件在属性里的生成操作设置成:嵌入的资源.

  9. codeforces 690C3 C3. Brain Network (hard)(lca)

    题目链接: C3. Brain Network (hard) time limit per test 2 seconds memory limit per test 256 megabytes inp ...

  10. SPOJ:Lexicographically Smallest(并查集&排序)

    Taplu and Abhishar loved playing scrabble. One day they thought of inventing a new game using alphab ...