关于WEBUI用纯JS来绘制整个页面,这种方式好吗?和js页面制作的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于00024-layui在一个页面,打开另一个页面,iframe版、ajax
关于WEB UI 用纯JS来绘制整个页面,这种方式好吗?和js页面制作的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于00024-layui 在一个页面,打开另一个页面,iframe版、ajax请求返回整个页面,页面里的javascript执行问题(requireJS)、AngularJS,这种使用服务的方式好吗?、fusioncharts 3.4 抛弃swf的方式,采用纯js的html5 进行图表绘制后出现的一些问题等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- WEB UI 用纯JS来绘制整个页面,这种方式好吗?(js页面制作)
- 00024-layui 在一个页面,打开另一个页面,iframe版
- ajax请求返回整个页面,页面里的javascript执行问题(requireJS)
- AngularJS,这种使用服务的方式好吗?
- fusioncharts 3.4 抛弃swf的方式,采用纯js的html5 进行图表绘制后出现的一些问题
WEB UI 用纯JS来绘制整个页面,这种方式好吗?(js页面制作)
WEB UI 用纯JS来绘制整个页面,这种方式好吗?
案例:开发一Framework的UI Lib
就是在BODY的部分看不到HTML TAG,全部使用JS来画出来,包括布局(layout,tab),数据操作控件(grid)等。
优点自然是有:
1.写法单一,就Framework的角度可以控制使用Framework的开发人员遵循规范;
2.代码看起来不乱,全部是JS,没有额外的HTML
3.?
但我表示怀疑:
1.性能影响:一个网页每次均要SERVER Response(一堆JS)过来后,再次通过ajax去取的数据,并用JS本身一一Append到DOM中,公共的部分也不例外;
2.Data与表现并不分离:这样设计与前端工程师不能分工合作
3.?
还有其他好处或问题吗?
00024-layui 在一个页面,打开另一个页面,iframe版
在我的客户页面,调整到 我的合同页面:
<div>请去【<adata-type="toPage" >合同管理—我的合同</a>】页面提交审核!</div>
js:
var active = {
toPage:function () {
top.layui.index.openTabsPage("order/myOrdersList.jsp", ''我的合同'');
}
}
$("body").on(''click'',''.toPage'', function(){
var type = $(this).data(''type'');
active[type] ? active[type].call(this) : '''';
});
打开另一页面(页签) 的关键代码:
top.layui.index.openTabsPage("order/myOrdersList.jsp", ''我的合同'');
ajax请求返回整个页面,页面里的javascript执行问题(requireJS)
需求背景
需求描述:功能需要是点击左侧的每个tab选项卡,后侧的内容随之改变,由于历史遗留问题,每次点击都是通过ajax来加载页面的,即没点击一个tab就发送一次ajax请求,把相关的html,css,js文件请求过来。
难点:有一个页面用到富文本编辑器,每次点击的时候,第一次的时候会正常显示,但是再次点击的时候就会报错:misMatched anonymous define() module ,且富文本编辑器没有初始化。
思考:是不是因为require加载过js文件之后,再次加载会有缓存且不会再次执行??(requiejs的缓存是不在执行已经执行过的js文件-- 好像是从哪里看到的,还不太确定)
AngularJS,这种使用服务的方式好吗?
我有这个HTML:
<p>Hello {{name}}</p>
控制器是:
function myCtrl(scope,service) {
scope.name = service.getUsername(); // service.getUsername() return "World!"
}
myCtrl.$inject = ['$scope','originalService'];
该服务运行良好,因此我不在此处粘贴代码…在这种情况下,结果是“ Hello world! ”。我以这种方式更改了HTML:
<p>Hello {{service.getUsername()}}</p>
但这是行不通的。
我改变了控制器:
function myCtrl(scope,service) {
scope.ser = service;
}
myCtrl.$inject = ['$scope','originalService'];
然后是HTML
<p>Hello {{ser.getUsername();}}</p>
这可行!
所以我的问题是:
这是直接在HTML中直接使用服务功能的唯一方法,还是我遗漏了某些东西?
fusioncharts 3.4 抛弃swf的方式,采用纯js的html5 进行图表绘制后出现的一些问题
1. 适用msline 绘制多线图表的时候,原来的json对象无法绘制线型的问题。
主要是 用于 3.4 之前的版本 json 对象中的 categories:
可以是一个对象。而在3.4 版本中必须是一个 数组。{ "chart": { "caption": "Number of visitors last week","subCaption": "Bakersfield Central vs Los Angeles Topanga","xAxisName": "Day","showborder": "0","yAxisName": "No. of visitors","paletteColors": "#6baa01,#008ee4","bgalpha": "0","borderAlpha": "20","canvasBorderAlpha": "0","usePlotGradientColor": "0","plotBorderAlpha": "10","legendBorderAlpha": "0","legendShadow": "0","captionpadding": "20","showXAxisLines": "1","axisLineAlpha": "25","divLineAlpha": "10","showValues": "0","showAlternateHGridColor": "0","animation": "0","showYAxisValues": "0","yAxisNamePadding": "100","showtooltip": "0" },"categories": [ { "category": [ { "label": "Mon" },{ "label": "Tue" },{ "label": "Wed" },{ "vline": "true","lineposition": "0","color": "#6baa01","labelHAlign": "right","labelPosition": "0","label": "National holiday" },{ "label": "Thu" },{ "label": "Fri" },{ "label": "Sat" },{ "label": "Sun" } ] } ],"annotations": { "origw": "600","origh": "450","autoscale": "1","groups": [ { "id": "ds1tips","items": [ { "id": "indicator-line","type": "line","dashed": "1" },{ "id": "tip1_1","type": "rectangle","fillcolor": "#6baa01","x": "$dataset.0.set.0.x + 5","y": "$dataset.0.set.0.y - 30","tox": "$dataset.0.set.0.x + 80","toy": "$dataset.0.set.0.y - 10" } ] },{ "id": "yaxisline","items": [ { "id": "line","color": "#f8bd19","x": "$canvasstartx - 5","y": "$canvasstarty","tox": "$canvasstartx - 5","toy": "$canvasendy","thickness": "3" },{ "id": "none-label-bg","fillcolor": "#f8bd19","x": "$canvasstartx - 60","tox": "$canvasstartx - 15","y": "$canvasendy - 20","radius": "3" },{ "id": "none-dot","type": "circle","radius": "5","y": "$canvasendy - 10","color": "#f8bd19" },{ "id": "none-label","type": "text","fillcolor": "#ffffff","text": "None","x": "$canvasstartx - 37","y": "$canvasendy - 12","fontsize": "12","bold": "1" },{ "id": "few-label-bg","x": "$canvasstartx - 55","y": "$canvasendy - 100","toy": "$canvasendy - 80",{ "id": "few-dot","y": "$canvasendy - 90",{ "id": "few-label","text": "Few","x": "$canvasstartx - 35","y": "$canvasendy - 92",{ "id": "moderate-label-bg","x": "$canvasstartx - 85","y": "$canvasendy - 180","toy": "$canvasendy - 160",{ "id": "moderate-dot","y": "$canvasendy - 170",{ "id": "moderate-label","text": "Moderate","x": "$canvasstartx - 50","y": "$canvasendy - 172",{ "id": "maximum-label-bg","x": "$canvasstartx - 88","y": "$canvasendy - 260","toy": "$canvasendy - 240",{ "id": "maximum-dot","y": "$canvasendy - 252",{ "id": "maximum-label","text": "Maximum","x": "$canvasstartx - 52","bold": "1" } ] },{ "id": "dyn-label-grp","items": [ { "id": "dyn-label-bg",{ "id": "dyn-label",{ "id": "dyn-detail-label","align": "right","x": "$canvasendx","bgcolor": "#ffffff" } ] } ] },"dataset": [ { "seriesname": "Bakersfield Central","data": [ { "value": "15123" },{ "value": "14233" },{ "value": "25507" },{ "value": "9110" },{ "value": "15529" },{ "value": "20803" },{ "value": "19202" } ] },{ "seriesname": "Los Angeles Topanga","data": [ { "value": "13400" },{ "value": "12800" },{ "value": "22800" },{ "value": "12400" },{ "value": "15800" },{ "value": "19800" },{ "value": "21800" } ] } ] }
今天关于WEB UI 用纯JS来绘制整个页面,这种方式好吗?和js页面制作的讲解已经结束,谢谢您的阅读,如果想了解更多关于00024-layui 在一个页面,打开另一个页面,iframe版、ajax请求返回整个页面,页面里的javascript执行问题(requireJS)、AngularJS,这种使用服务的方式好吗?、fusioncharts 3.4 抛弃swf的方式,采用纯js的html5 进行图表绘制后出现的一些问题的相关知识,请在本站搜索。
本文标签: