第5模块闯关练习
第5模块闯关练习
JavaScript和JQuery的区别
一、本质上的区别
1.JavaScript 是通过标签插入到HTML页面,可由所有的现代浏览器执行的一种轻量级的编程语言。javascript能做到的,jQuery不一定能做到.jQuery能做到的,javascript一定能做到。
2.JQuery是一个JavaScript轻量级函数库。
语法上的差异
1.操作元素节点
a.JavaScript使用
getElement系列
JQuery使用
大量的选择器同时使用$()包裹选择器
操作属性节点
a.JavaScript使用
getAttribute("属性名") 、 setAttribute("属性名","属性值")
document.getElementById("first").getAttribute("id");
document.getElementById("first").setAttribute("name","nafirst");
JQuery使用
.attr()传入一个参数获取,传入两个参数设置
.prop()
prop和attr一样都可以对文本的属性进行读取和设置;
两者的不同 在读取checked,disabled,等属性名=属性值的属性时
attr返回属性值或者undefined,当读取的checked属性时不会根据是否选中而改变
prop返回true和false 当读取的checked属性时会根据是否选中而改变
也就是说attr要取到的属性必须是在标签上写明的属性,否则不能取到
$("#first").attr("id");
$("#first").attr("name","nafirst"); $("#first").removeAttr("name");
$("#first").prop("id"); $("#first").prop("name","nafirst"); $("#first").removeProp("name");
3.操作文本节点
a.JavaScript使用
innerHTML:取到或设置一个节点的HTML代码,可以取到css,以文本的形式返回
innerText:取到或设置一个节点的HTML代码,不能取到css
value:取到input[type='text']输入的文本
document.getElementById("serven_times").innerHTML;
document.getElementById("serven_times").innerHTML = "呵呵 ";
document.getElementById("eight_times").innerText;
document.getElementById("eight_times").innerText = "啦啦";
JQuery使用
.html()取到或设置节点中的html代码 .text()取到或设置节点中的文本 .val()取到或设置input的value属性值
$("#serven_times").html();
$("#serven_times").html("呵呵 ");
$("#eight_times").text();
$("#eight_times").text("啦啦");
$("#input").val();
$("#input").val("哈哈");
4.操作css样式的时候
JavaScript:
* 1.使用setAttribute设置class和style * document.getElementById("first").setAttribute("style","color:red"); * 2.使用.className添加一个class选择器 * document.getElementById("third").className = "san"; * 3.使用.style.样式直接修改单个样式。注意样式名必须使用驼峰命名法 * document.getElementById("four_times").style.fontWeight = "900"; * 4.使用.style或.style.cssText添加一串行级样式: * document.getElementById("five_times").style = "color: blue;";//IE不兼容 * document.getElementById("six_times").style.cssText = "color: yellow;font-size : 60px;";
JQuery:
$("#div2").css("color","yellow"); $("#div2").css({ "color" : "white", "font-weight" : "bold", "font-size" : "50px", });
5.操作层次节点
JavaScript:
*1.childNodes:获取当前节点的所有子节点(包括元素节点和文本节点) * children:获取当前节点的所有元素子节点(不包括文本节点) *2.parentNode:获取当前节点的父节点 *3.firstChild:获取第一个元素节点,包括回车等文本节点 * firstElementChild:获取第一个元素节点,不包括回车节点 * lastChild、lastElementChild 同理 *4.previousSibling:获取当前元素的前一个兄弟节点 * previousElementSibling::获取当前元素的前一个兄弟节点 * nextSibling、nextElementSibling
JQuery:
1.提供了大量的选择器:
2.除此之外也提供了对应的函数: first() last() children() parents() parent() siblings()
给一个节点绑定事件
JavaScript:
使用了Dom0事件模型和Dom2事件模型,具体内容见我上一篇博客
JQuery:
①.事件绑定的快捷方式
使用on进行事件绑定
7.JQuery的文档就绪函数和window.onload的区别
*①.window.onload必须等待网页资源(包括图片等)全部加载完成后,才能执行; * 而文档就绪函数只需要等到网页DOM结构加载完成后,即可执行 *②.window.onload在一个页面中,只能写一次,写多次会被最后一次覆盖 * 而文档就绪函数在一个页面中可以有N个
三、JavaScript对象和JQuery对象的方法不能混用。
1.JavaScript对象和JQuery对象
① 使用$("")取到的节点为JQuery对象,只能调用JQuery方法,不能调用JavaScript方法; * $("#div").click(function(){})√ * $("#div").onclick = function(){}× 使用JQuery对象调用JavaScript方法 * * 同理,使用、document.getElement系列函数取到的对象为JavaScript对象,也不能调用JQery函数
2.JavaScript对象和JQuery对象互转
*① JQuery ---> JavaScript :使用get(index)或者[index]选中的就是JavaScript对象 * $("div").get(0).onclick = function(){} * $("div").[0].onclick = function(){} * ② JavaScript ---> JQuery :使用$()包裹JavaScript对象 (我们发现JQuery不管获得几个对象都是一个数组,可以直接给整个数组都添加某一事件) * var div = document.getElementById("div"); * $(div).click(function(){});
交集选择器:由两个选择器连接构成,选择二者范围的交集,两个选择器之间不能有空格,第一个必须是标签选择器,第二个必须是类选择器或者ID选择器。
标准文档流的微观现象:1、空白折叠现象,2、高矮不齐底边对齐,3、一行写不完,自动换行写
浮动元素四大特性:1、浮动元素,脱标,2、浮动元素互相贴靠。3浮动元素,“字围”效果。
浮动元素不会挡住没有浮动元素中的文字, 没有浮动的文字会自动给浮动的元素让位置,这个就是浮动元素字围现象
4、收缩的效果,没有设置宽度就收缩成文字的宽度。
清除浮动的四种方法:1、给父盒子设置高度。2、clear:both
3、伪元素清除法
css 伪元素即插入的虚伪元素 像:before :after 插入元素 css 伪类 就是 操作class 样式 利用伪元素清除浮动
ps 利用伪 元素插入的dom 在dom结构中是看不到的 不过可以在css 中看到
.clearfix::after { content: "."; clear: both; display: block; overflow: hidden; font-size: 0; height: 0; }
.clearfix { zoom: 1; } ---------------------
4、overflow:hidden
当然,我们以前用的最多的还是使用overflow:hidden来隐藏子元素相对于父元素的超界溢出
因此我们可以尝试这样总结:当父元素的高度是靠子元素撑开的时候,子元素浮动时,则在父元素使用overflow: hidden可以清除浮动,使得父元素的高度依旧是靠子元素撑开。
当父元素自身设置了height属性值,则在父元素使用overflow: hidden可以使子元素超出父元素的那部分隐藏。
visibility属性用来确定元素是显示还是隐藏的,这用visibility="visible|hidden"来表示(visible表示显示,hidden表示隐藏)。 当visibility被设置为"hidden"的时候,元素虽然被隐藏了,但它仍然占据它原来所在的位置
最后是display被设置:none,这时元素实际上就从页面中被移走,它下面所在的元素就会被自动跟上填。(此时应用display: none;的元素相当于消失,而visibility: hidden;则只表示隐藏,位置还在。)
opacity设置0-1之间的小数。0为透明,占位。与visibility一样只是隐藏。
脱离文档标准流三种方式?有什么区别,并演示
1、浮动;2;绝对定位;3、固定定位
清除浮动其实主要解决的就是高度塌陷问题,具体在此不再赘述~~~那些年我们一起清除过的浮动(大佬博客,写的挺不错)
方法小结:1.
1)添加额外标签
这是在学校老师就告诉我们的 一种方法,通过在浮动元素末尾添加一个空的标签例如
,其他标签br等亦可。
2)父元素设置 overflow:hidden
通过设置父元素overflow值设置为hidden;在IE6中还需要触发 hasLayout ,例如 zoom:1;
?
1
2
3
4
5
6
<
div
class="wrap" id="float3" style="overflow:hidden; *zoom:1;">
<
h2
>3)父元素设置 overflow
h2
>
<
div
class="main left">.main{float:left;}
div
>
<
div
class="side left">.side{float:right;}
div
>
div
>
<
div
class="footer">.footer
div
>
优点:不存在结构和语义化问题,代码量极少
缺点:内容增多时候容易造成不会自动换行导致内容被隐藏掉,无法显示需要溢出的元素;04年POPO就发现overflow:hidden会导致中键失效,这是我作为一个多标签浏览控所不能接受的。所以还是不要使用.
3)父元素也设置浮动
优点:不存在结构和语义化问题,代码量极少
缺点:使得与父元素相邻的元素的布局会受到影响,不可能一直浮动到body,不推荐使用
4)使用:after 伪元素
需要注意的是 :after是伪元素(Pseudo-Element),不是伪类(某些CSS手册里面称之为“伪对象”).
由于IE6-7不支持:after,使用 zoom:1触发 hasLayout。
固定定位:脱标,不占位置,以浏览器为参考点,固定位置,滑动滚动条不动
总结:固定定位于绝对定位最根本的区别还是偏移基准的不同固定定位是相对于浏览器而绝对定位的基准则是父级元素,固定定位滑动滚动条不动。而且最好还要注意ie6不兼容固定定位而兼容绝对定位。
查询一下对div和span标签的理解
div盒子标签,可以把文档分割为独立的、不同的部分,所以div是块级元素。另外,每块区域表示独立的一块。
span 标签是行内元素,span标签可以单独摘出某块内容,结合css设置相应的样式
如何理解标签的嵌套结构?它们的规则是怎样的?
块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素,例如:
✔️
#”> ✔️
❌
块级元素不能放在p标签里面,比如
❌
❌
有几个特殊的块级元素只能包含内嵌元素,不能再包含块级元素,这几个特殊的标签是:
h1、h2、h3、h4、h5、h6、p
li元素可以嵌入ul,ol,div等标签
如果给你一个网站,让你只用div来画块的画,如何画?比如京东
把京东划分成N个模块,用div去设置相同的大小,例如,头部-container-导航 ,注册 logo
主体 -container-内容1,内容2 底部-container-地址栏,其它信息等
一个html文件包含几部分?
称为根标签,所有的网页标签都在中。
标签用于定义文档的头部,它是所有头部元素的容器。常见的头部元素有、
2,导入文件
2,如何在js中定义使用变量?
?
1
2
3
4
5
6
7
8
var a; //先定义
a = 100; // 后赋值
//也可以直接定义变量+赋值
var a = 100;
变量的命名规范
变量名有命名规范:只能由英语字母、数字、下划线、美元符号$构成,且不能以数字开头,并且不能是JavaScript保留字
4,变量命名,首字符只能是字母,下划线,$美元符 三选一,余下的字符
可以是下划线、美元符号或任何字母或数字字符且区分大小写,x与X是两个变量
3,js的基本数据类型有哪些?
?
1
2
3
4
5
1,数字类型(number)
2,字符串类型(
string
)
3,布尔类型(boolean)
4,Null类型
5,Undefined类型
4,Null和Undefined的区别?
?
1
2
3
null
是一个表示”无”的对象,转为数值时为0;
undefined是一个表示”无”的原始值,转为数值时为NaN
5,js有哪些运算符?
?
1
2
3
4
5
1,算术运算符(+ - * / % ++ -- )
2,比较运算符(> >= < <= != == === !==)
3,逻辑运算符(&& || !)
4,赋值运算符(= += -= *= /=)
5,字符串运算符(+ 连接,两边操作数有一个或两个是字符串就做连接运算)
6,js的typeof返回哪些数据类型?
?
1
number
string
Object function boolean underfind
7,分别解释数组方法pop()、push()、unshift()、shift()的功能?
?
1
2
shift()头部删除 pop()尾部删除
Unshift()头部添加 push()尾部添加
var x = 1.234;
//天花板函数 表示大于等于 x,并且与它最接近的整数是2
var a = Math.ceil(x);
console.log(a);//2
var x = 1.234;
// 小于等于 x,并且与它最接近的整数 1
var b = Math.floor(x);
console.log(b);//1
//求 两个数的最大值 最小值
console.log(Math.max(2,5));//5
console.log(Math.min(2,5));//2
var ran = Math.random();
console.log(ran);[0,1)
如果让你取100-200之间的随机数,怎么做?
背过公式:min - max之间的随机数: min+Math.random()*(max-min);
var str = 'alex';
var charset = str.charAt(1);
console.log(charset);//l
concat 返回字符串值,表示两个或多个字符串的拼接
var str1 = 'al';
var str2 = 'ex';
console.log(str1.concat(str2,str2));//alexex
replace(a,b) 将字符串a替换成字符串b
var a = '1234567755';
var newStr = a.replace("4567","****");
console.log(newStr);//123****755
indexof() 查找字符的下标,如果找到返回字符串的下标,找不到则返回-1 。跟seach()方法用法一样
var str = 'alex';
console.log(str.indexOf('e'));//2
console.log(str.indexOf('p'));//-1
slice(start,end) 左闭右开 分割字符串
var str = '小马哥';
console.log(str.slice(1,2));//马
split('a',1) 以字符串a分割字符串,并返回新的数组。如果第二个参数没写,表示返回整个数组,如果定义了个数,则返回数组的最大长度
var str = '我的天呢,a是嘛,你在说什么呢?a哈哈哈';
console.log(str.split('a'));//["我的天呢,", "是嘛,你在说什么呢?", "哈哈哈"]
var str = '我的天呢,a是嘛,你在说什么呢?a哈哈哈';
console.log(str.substr(0,4));//我的天呢
var str = 'XIAOMAGE';
console.log(str.toLowerCase());//xiaomage
var str = 'xiaomage';
console.log(str.toUpperCase());//XIAOMAGE
//创建了一个date对象 返回本地时间
var myDate = new Date();
//返回本地时间
console.log(myDate.toLocaleDateString());
在JSON中,有两种结构:对象和数组。
var packJSON= {"name":"alex", "password":"123"};
一个对象以“{”开始,“}”结束,“key/value”之间运用 “,”分隔。
var packJSON = [{"name":"alex", "password":"123"}, {"name":"wusir", "password":"456"}];
JSON对象和JSON字符串转换
在数据传输过程中,JSON是以字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。例如:
var jsonStr ='{"name":"alex", "password":"123"}' ;
var jsonObj = {"name":"alex", "password":"123"};
JSON字符串转换JSON对象
var jsonObject= jQuery.parseJSON(jsonstr);
JSON对象转化JSON字符串
var jsonstr =JSON.stringify(jsonObject );
遍历JSON对象和JSON数组
遍历JSON对象代码如下:
var packAlex = {"name":"alex", "password":"123"} ;
for(var k in packAlex ){//遍历packAlex 对象的每个key/value对,k为key
alert(k + " " + packAlex[k]);
}
遍历JSON数组代码如下
var packAlex = [{"name":"alex", "password":"123"}, {"name":"wusir", "password":"456"}];
for(var i in packAlex){//遍历packJson 数组时,i为索引
alert(packAlex[i].name + " " + packAlex[i].password);
}
8,ajax请求的时候get 和post方式的区别?
9,ajax请求时,如何解释json数据?
?
1
使用eval parse,鉴于安全性考虑 使用parse更靠谱
10,事件委托是什么?
事件的概念
HTML中与javascript交互是通过事件驱动来实现的,例如鼠标点击事件、页面的滚动事件onscroll等等,可以向文档或者文档中的元素添加事件侦听器来预订事件。想要知道这些事件是在什么时候进行调用的,就需要了解一下“事件流”的概念
什么是事件流
事件流描述的是从页面中接收事件的顺序
1、DOM事件流
“DOM2级事件”规定的事件流包括三个阶段:
① 事件捕获阶段;
② 处于目标阶段;
③ 事件冒泡阶段
11,javascript添加 删除 替换 插入到某个节点的方法分别是什么?
?
1
2
3
4
添加:obj.appendChild()
删除:obj.removeChild()
替换:obj.replaceChild()
插入:obj.insertBefore()
jQuery添加 删除 替换 插入到某个节点的方法分别是什么?
obj.append()
obj.remove() //删除
$( " .c " ).insertAfter($(" .a " )); //插入实例
$(".c").replaceWith($(".a")) //a节点替换掉c节点
12,简述一下什么是javascript的同源策略?
?
1
2
一段脚本只能读取来自于同一来源的窗口和文档的属性,
这里的同一来源指的是主机名、协议和端口号的组合
13,简述一下对This对象的理解。
?
1
2
3
this
是js的一个关键字,随着函数使用场合不同,
this
的值会发生变化。
但是有一个总原则,那就是
this
指的是调用函数的那个对象。
this
一般情
况下:是全局对象Global。 作为方法调用,那么
this
就是指这个对象
14,编写一个b继承a的方法
?
function Parent(username){
this.username = username;
this.hello = function(){
alert(this.username);
}
}
function Child(username,password){
Parent.apply(this,new Array(username));
this.password = password;
this.world = function(){
alert(this.password);
}
}
var parent = new Parent("zhangsan");
var child = new Child("lisi","123456");
parent.hello();
child.hello();
child.world();
15,如何阻止事件冒泡和默认事件
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function stopBubble(e){
if
(e && e.stopPropagation)
e.stopPropagation()
else
window.
event
.cancelBubble=
true
}
return
false
$(function(ev){
ev.stopPropagation()
eg:href submit ev.preventDefault();
return
false
;
});
16,浏览器端的js包括哪几个部分?
?
1
核心( ECMAScript) , 文档对象模型(DOM), 浏览器对象模型(BOM)
17,js动画有哪些实现方法?
?
1
用定时器 setTimeout执行一次和setInterval
18,js动画的优缺点?
?
1
2
3
4
5
6
优点:
1.控制能力很强,可以单帧的控制、变换
2.兼容性好,写得好完全可以兼容IE6,且功能强大。
缺点:
计算没有css快,另外经常需要依赖其他的库。
19,跨域的几种方式?
?
1
2
3
4
5
6
jsonp(利用script标签的跨域能力)跨域、
websocket(html5的新特性,是一种新协议)跨域、
设置代理服务器(由服务器替我们向不同源的服务器请求数据)、
CORS(跨源资源共享,cross origin resource sharing)、
iframe跨域、
postMessage(包含iframe的页面向iframe传递消息)
20,3 + 2 +“7”的结果是什么?
?
1
由于3和2是整数,它们将直接相加。由于7是一个字符串,它将会被直接连接,所以结果将是57。
四,jQuery部分
1,jQuery是什么?
?
1
2
jQuery是一个快速的,简洁的javaScript库,使用户能更方便地处理HTMLdocuments、
events、实现动画效果,并且方便地为网站提供AJAX交互
2,jQuery的优势是什么?
?
1
它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择
3,什么是jQuery对象?
?
1
2
3
jQuery 对象就是通过jQuery包装DOM对象后产生的对象。
jQuery 对象是 jQuery 独有的. 如果一个对象是 jQuery 对象,
那么它就可以使用 jQuery 里的方法: $(“#test”).html()
4,jQuery都有哪些选择器?
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
1.基础选择器
id选择器 $(
'#brother'
).css(
'color'
,
'red'
);
标签选择器 $(
'a'
).css({
'color'
:
'green'
,
'font-size'
:
'24px'
});
类选择器 $(
'.li3'
).css(
'background'
,
'yellow'
);
通配符选择器 console.log($(
''
));
$(
''
).html(
''
);
2.层级选择器
后代选择器 $(
'#box p'
).css(
'color'
,
'red'
);
子代选择器 $(
'#box>p'
).css(
'color'
,
'green'
);
毗邻选择器,匹配所有的紧接着选中元素的兄弟 $(
'#father+p'
).css(
'font-size'
,
'30px'
);
兄弟选择器 $(
'#father~p'
).css(
'background'
,
'gray'
);
3.过滤选择器
获取第一个 $(
'li:first'
).css(
'background'
,
'gray'
);
获取最后一个 $(
'li:last'
).css(
'background'
,
'yellow'
);
获取奇数 $(
'li:odd'
).css(
'color'
,
'red'
);
获取偶数 $(
'li:even'
).css(
'color'
,
'green'
);
选中索引值为1 $(
'li:eq(1)'
).css(
'font-size'
,
'32px'
);
大于索引值1 $(
'li:gt(1)'
).css(
'font-size'
,
'60px'
);
小于索引值1 $(
'li:lt(1)'
).css(
'font-size'
,
'10px'
);
4.属性选择器
$(
'li[id]'
).css(
'color'
,
'red'
);
$(
'li[class=what]'
).css(
'font-size'
,
'30px'
);
$(
'li[class!=what]'
).css(
'font-size'
,
'50px'
);
$(
'input[name^=username]'
).css(
'background'
,
'gray'
);
$(
'input[name$=222]'
).css(
'background'
,
'green'
);
$(
'button[class*=danger]'
).css(
'background'
,
'orange'
);
解释: 标签名[属性名],查找所有含有id属性的该标签名的元素 匹配给
定的属性 是what值 [attr=value] 匹配给定的属性是某个特定值的元素
没有
class
也会发生变化,[attr!=value] 匹配所有不含有指定的属性,
或者属性不等于特定值的元素 匹配给定的属性是以某些值开始的元素 ^
匹配给定的属性是以某些值结尾的元素 $ 匹配给定的属性是以包含某些值的元素 *
5.筛选选择器
$(
'span'
).eq(1).css(
'color'
,
'red'
);
$(
'span'
).first().css(
'font-size'
,
'28px'
);
$(
'span'
).last().css(
'color'
,
'greenyellow'
);
console.log($(
'span'
).parent());
$(
'span'
).parent(
'.p1'
).css({
'width'
:
'300px'
,height:
'400px'
,
'background'
:
'red'
});
$(
'.list'
).siblings(
'li'
).css(
'color'
,
'red'
);
$(
'div'
).find(
'button'
).css(
'background'
,
'gray'
);
解释: 获取第n个元素 数值从0开始 .eq() 获取第一个元素 .first() 获取最后
一个元素 .last() 获取父亲元素 .parent() 选择所有的兄弟元素 .siblings()
查找所有的后代元素 .find()
5,简述一下jQuery的筛选器的分类,分别简单举例介绍一下。
?
1
2
3
4
5
6
7
8
9
10
11
过滤筛选器 如:$(
"li"
).eq(2) $(
"li"
).first() $(
"ul li"
).hasclass(
"test"
)
查找筛选器 如: 查找子标签: $(
"div"
).children(
".test"
) $(
"div"
).find(
".test"
)
向下查找兄弟标签: $(
".test"
).next() $(
".test"
).nextAll() $(
".test"
).nextUntil()
向上查找兄弟标签: $(
"div"
).prev() $(
"div"
).prevAll() $(
"div"
).prevUntil()
查找所有兄弟标签: $(
"div"
).siblings()
查找父标签: $(
".test"
).parent() $(
".test"
).parents() $(
".test"
).parentUntil()
6,jQuery的美元符号$有什么作用?
?
1
其实美元符号$只是”jQuery”的别名,它是jQuery的选择器
7,body中的onload()函数和jQuery中的document.ready()有什么区别?
?
1
2
3
4
1,我们可以在页面中使用多个document.ready(),但只能使用一次onload()。
2,document.ready()函数在页面DOM元素加载完以后就会被调用,而onload()
函数则要在所有的关联资源(包括图像、音频)加载完毕后才会调用。
8,jQuery中的Delegate()函数有什么作用?
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
例1:没弄懂,看例2
1,如果你有一个父元素,需要给其下的子元素添加事件,
这时你可以使用
delegate
()了,代码如下:
$(
"ul"
).
delegate
(
"li"
,
"click"
, function(){
$(
this
).hide();
});
2,当元素在当前页面中不可用时,可以使用
delegate
()
$(
'ul'
).
on
(
'click'
,
'.name,.luffy'
,function () {
console.log($(
this
));
});
例2:
// 事件委托 (看时机 如果是未来追加的元素 建议使用 事件委托来绑定事件) // 原理: 利用冒泡的原理,把事件加到父级上,触发执行效果。 $('ul').on('click','li',function(e){ alert($(this).text()); });
// 未来 动态的 往ul中追加了li标签 // 未来追加的li标签 自己完成不了click事件,那么这个时候考虑“事件委托(代理)” $('button').click(function(event) { $('ul').append('
黑gril ')
});
9,请用jQuery实现,在一个表单中,如果将所有的div元素都设置为绿色。
?
1
$(“div”).css(“color”,”green”)
10,jQuery中的hover()和toggle()有什么区别?
?
1
2
3
hover()和toggle()都是jQuery中两个合成事件。
hover()方法用于模拟光标悬停事件。
toggle()方法是连续点击事件。
11,jquery表单提交前有几种校验方法?分别为?
?
1
2
3
formData:返回一个数组,可以通过循环调用来校验
jaForm:返回一个jQuery对象,所有需要先转换成dom对象
fieldValue:返回一个数组 beforeSend()
12,$(this) 和 this 关键字在 jQuery 中有何不同?
?
1
2
3
4
5
6
7
$(
this
) 返回一个 jQuery 对象,你可以对它调用多个 jQuery 方法,
比如用 text() 获取文本,用val() 获取值等等
this
代表当前元素,它是 JavaScript 关键词中的一个,表示上下文中的当前 DOM 元素。
你不能对它调用 jQuery 方法,直到它被 $() 函数包裹,例如 $(
this
)
13,jQuery中 detach() 和 remove() 方法的区别是什么?
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
detach() 和 remove() 方法都被用来移除一个DOM元素,
两者之间的主要不同在于
detach() 会保持对过去被解除元素的跟踪, 因此它可以被取消解除,
而 remove() 方法则会保持过去被移除对象的引用.
你也还可以看看 用来向DOM中添加元素的 appendTo() 方法
var
a = $(
'button'
).remove();
console.log(a[0],a[1]);
$(
'ul'
).append(a[0]);
var
b = $(
'button'
).detach();
console.log(b[0]);
$(
'ul'
).append(b[0]);
14,你要是在一个 jQuery 事件处理程序里返回了 false 会怎样?
15,如何在点击一个按钮时使用 jQuery 隐藏一个图片?
?
1
2
3
4
5
$(
'#ButtonToClick'
).click(function(){
$(
'#ImageToHide'
).hide();
});
16,jQuery.get() 和 jQuery.ajax()方法之间的区别是什么?
?
1
2
ajax() 方法更强大,更具可配置性, 让你可以指定等待多久,以及如何处理错误。
get
() 方法是一个只获取一些数据的专门化方法。
17,用jQuery如何将一个 HTML 元素添加到 DOM 树中的?
?
1
2
3
4
5
6
7
8
9
10
通过appendTo() 方法在指定的 DOM 元素末尾添加一个现存的元素或者一个新的 HTML 元素。
append appendTo
prepend prependTo
before insertBefore after insertAfter
clone replaceWith replaceAll
empty remove detach
18,如何找到所有 HTML select 标签的选中项?
?
1
2
3
4
$(
'[name=NameOfSelectedTag] :selected'
)
这段代码结合使用了属性选择器和 :selected 选择器,结果只返回被选中的选项。
你可按需修改它,比如用 id 属性而不是 name 属性来获取 <
select
> 标签。
19,remove() 和 empty()的区别?
?
1
2
remove, 删除节点,并删除元素节点绑定的事件。
empty, 清空节点元素的内容,但是节点还存在,只是内容被清空,类似$().html(
' '
)
20,在jquery中你是如何去操作样式的?
?
1
2
3
addClass() 来追加样式 removeClass() 来删除样式 toggle() 来切换样式
21,简述beforeSend方法有的作用?
?
1
2
3
4
5
发送请求前可以修改XMLHttpRequest对象的函数,在beforeSend中,
如果返回
false
可以取消本次的Ajax请求。XMLHttpRequest对象是唯一的
参数,所以在这个方法里可以做验证。
22,jquery对象和dom对象是怎样转换的?
?
1
2
3
4
5
1 var domObj = $("#div")[0];
2 domObj.innerHTML = "将jq对象转化为dom对象并调用相关方法"
dom对象转换为jq对象
1 var domObj = document.getElementById("div");
2 var $obj = $(domObj);
3 $obj.html("dom对象转换为jq对象后调用jq方法")
23,radio单选组的第二个元素为当前选中值,该怎么去取?
?
1
$(
'input[name=items]'
).
get
(1).
checked
=
true
;
24,在ajax中data主要有几种方式?
?
1
三种, html拼接的, json数组, form表单经serialize()序列化的
25,jQuery 中的方法链是什么?使用方法链有什么好处?
?
1
2
方法链是对一个方法返回的结果调用另一个方法,这使得代码简洁明了,
同时由于只对 DOM 进行了一轮查找,性能方面更加出色
26,哪种方式更高效:document.getElementbyId("myId") 还是 $("#myId")?
?
1
第一种,因为它直接调用了 JavaScript 引擎。
五,bootstrap部分
1,什么是 Bootstrap?
?
1
2
Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。
Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的。
2,为什么使用 Bootstrap?
?
1
2
3
移动设备优先 浏览器支持 容易上手 响应式设计 它为开发人员创建接口提供
了一个简洁统一的解决方案。 它包含了功能强大的内置组件,易于定制。 它还
提供了基于 Web 的定制。 它是开源的。
3,Bootstrap 包含哪些内容?
?
1
2
3
4
5
6
7
8
9
10
11
12
1,基本结构:Bootstrap 提供了一个带有网格系统、链接样式、背景的基本结构。
2,CSS:Bootstrap 自带以下特性:全局的 CSS 设置、定义基本的 HTML 元素样式、
可扩展的
class
,以及一个先进的网格系统。
3,组件:Bootstrap 包含了十几个可重用的组件,用于创建图像、下拉菜单、导航、
警告框、弹出框等等。
4,JavaScript 插件:Bootstrap 包含了十几个自定义的 jQuery 插件。您可以直接
包含所有的插件,也可以逐个包含这些插件。
5,定制:您可以定制 Bootstrap 的组件、LESS 变量和 jQuery 插件来得到您自己的版本。
4,Bootstrap HTML编码规范语法。
?
1
2
3
4
5
6
7
8
9
1,用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法。
2,嵌套元素应当缩进一次(即两个空格)。
3,对于属性的定义,确保全部使用双引号,绝不要使用单引号。
4,不要在自闭合(self-closing)元素的尾部添加斜线 -- HTML5 规范中明确说明这是可选的。
5,不要省略可选的结束标签(closing tag)(例如, 或
)。
5,Bootstrap CSS编码规范语法。
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
1,用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法。
2,为选择器分组时,将单独的选择器单独放在一行。
3,为了代码的易读性,在每个声明块的左花括号前添加一个空格。
4,声明块的右花括号应当单独成行。
5,每条声明语句的 : 后应该插入一个空格。
6,为了获得更准确的错误报告,每条声明都应该独占一行。
7,所有声明语句都应当以分号结尾。最后一条声明语句后面的分号是可选的,但是,如果
省略这个分号,你的代码可能更易出错。
8,对于以逗号分隔的属性值,每个逗号后面都应该插入一个空格(例如,box-shadow)。
9,不要在 rgb()、rgba()、hsl()、hsla() 或 rect() 值的内部的逗号后面插入空格。这样利
于从多个属性值(既加逗号也加空格)中区分多个颜色值(只加逗号,不加空格)。
10,对于属性值或颜色参数,省略小于 1 的小数前面的 0 (例如,.5 代替 0.5;-.5px 代
替 -0.5px)。
11,十六进制值应该全部小写,例如,#fff。在扫描文档时,小写字符易于分辨,因为他们
的形式更易于区分。
12,尽量使用简写形式的十六进制值,例如,用 #fff 代替 #ffffff。
13,为选择器中的属性添加双引号,例如,input[type=
"text"
]。只有在某些情况下是可选
的,但是,为了代码的一致性,建议都加上双引号。
14,避免为 0 值指定单位,例如,用 margin: 0; 代替 margin: 0px;。
6,让 中的每一行对鼠标悬停状态作出响应的类名是什么?
7,让表格更加紧凑,单元格中的内补(padding)均会减半的类名是什么?
8,输入框设置 readonly 后的结果是什么?
?
1
2
禁止用户修改输入框中的内容。处于只读状态的输入框颜色更浅(就像被禁
用的输入框一样),但是仍然保留标准的鼠标状态。
9,输入框设置 disabled 属性后的结果是什么?
?
1
2
禁止其与用户有任何交互(焦点、输入等)。被禁用的输入框颜色更浅,并
且还添加了 not-allowed 鼠标状态。
10,简述下button都有哪些常用的状态,及类名分别是什么?
?
1
2
3
4
5
6
7
默认样式 btn-
default
首选项 btn-primary
成功 btn-success
一般信息 btn-info
警告 btn-warning
危险 btn-danger
链接 btn-link
12,简述 .show 和 .hidden 类的作用?
?
1
可以强制任意元素显示或隐藏(对于屏幕阅读器也能起效)
13,在bootstrap中被删除的文本使用什么标签?
14,在bootstrap中无用文本使用什么标签?
15,在bootstrap中额外插入的文本使用什么标签?
16,在bootstrap中为文本添加下划线使用什么标签?
17,在bootstrap中给 之内的每一行增加斑马条纹样式类名是什么?
18,简介一下栅格系统。
?
1
2
栅格系统用于通过一系列的行(row)与列(column)的组合来创建页面布局,
你的内容就可以放入这些创建好的布局中,系统会自动分为最多12列。
19,在bootstrap中让段落突出显示的类名是什么?
重点内容:DOM的操作
1.声明一个add函数,要求函数有返回值,并打印结果
2.对“hello world”进行翻转处理 要求变为:"dlorw olleh"
var s = "hello world"; console.log(s.split("").reverse().join(""));
3.如何定义一个对象?使用字面量方式 要求:该对象有名字、年龄、爱好多个
function Person(name,age,hobby){
this.name = name;
this.age = age;
this.hobby = hobby;
}
var p1 =new Person(' andyzhang ' ,32,' test ' );
console.log(p1.name)
console.log(typeof p1)
4.setTimeout()和setInterval()的区别?如何理解他们的作用
setTimeout()
只在指定的时间后执行一次
/定时器 异步运行
function hello(){
alert( " hello " );
}
//使用方法名字执行方法
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout(" hello() " ,3000);//使用字符串执行方法
window.clearTimeout(t1); //去掉定时器
setInterval()
/实时刷新 时间单位为毫秒
setInterval( ' refreshQuery() ' ,8000);
/* 刷新查询 */
function refreshQuery(){
console.log( ' 每8秒调一次 ' )
}
在指定时间为周期循环执行
两种方法根据不同的场景和业务需求择而取之,
对于这两个方法,需要注意的是如果要求在每隔一个固定的时间间隔后就精确地执行某动作,那么最好使用setInterval,而如果不想由于连续调用产生互相干扰的问题,尤其是每次函数的调用需要繁重的计算以及很长的处理时间,那么最好使用setTimeout
5.对于标签文本内容值的操作使用的是哪个属性?input输入框呢?
标签文本内容值的操作使用的是 " innerHTML 或 innerText" input输入框是:value
6.获取DOM的三种方式?
var oDiv1 = document.getElementById("box1"); //方式一:通过id获取单个标签
var oDiv2 = document.getElementsByTagName("div")[0]; //方式二:通过 标签名 获得 标签数组,所以有s
var oDiv3 = document.getElementsByClassName("box")[0]; //方式三:通过 类名 获得 标签数组,所以有s
7.如何设置标签属性的值?比如类名如何设置?如何设置多个类型
Attribute
该属性主要是用来在标签行内样式,添加、删除、获取属性。且适用于自定义属性。
setAttribute("属性名",属性值“”);这个是用来设置标签属性的;
removeAttribute("属性名");这是用来删除标签属性的。
getAttribute("属性名");获取标签该属性的值;
obj.style.css样式
该属性主要是用来在标签行内样式,添加、删除、获取属性。不适用自定义属性。
例如设置li标签的宽高,背景色;
li.style.width = "200px";
li.style.height = "200px";
li.style.backgroundColor = "red";
注意在js中,css的属性名用连接符的地方,改为将后面的第一个字母大写,如:background-color ==> backgroundColor ;
window.getComputedStyle(obj)["属性名"]
用来获取标签的属性,对内联式有效。
设置多个属性,属性中间要加空格。
8.列举你知道的js事件
9.如何设置样式属性?比如设置该div的背景颜色为红色
例如设置li标签的宽高,背景色;
li.style.width = "200px";
li.style.height = "200px";
10.使用DOM操作,创建一个p标签,设置内容为alexsb,将p标签插入到div中。然后点击某个删除按钮,移除当前创建的p标签(练习dom的创建,修改内容,追加,删除)
"
box " >
"text " >文本
"create " >创建
"
text " name=
" inp " id=
" inp " value=
"" />
"alter " >修改
"" name=
" inp1 " id=
" inp1 " value=
"" />
"add " >追加
"remove " >删除
删除节点
格式如下:
父节点.removeChild(子节点);
解释:用父节点删除子节点。必须要指定是删除哪个子节点。
如果我想删除自己这个节点,可以这么做:
node1.parentNode.removeChild(node1);
11.如何打开一个新的网站,比如打开路飞学城官网
超链接Welcome
等效于js代码
window.location.href="https://www.luffycity.com"; //在同当前窗口中打开窗口
2.超链接Welcome
等效于js代码
window.open("https://www.luffycity.com"); //在另外新建窗口中打开窗口
继承性
有一些属性,当给自己设置的时候,自己的后代都继承上了,这个就是继承性。
哪些属性能继承?
color、 text-开头的、line-开头的、font-开头的。
这些关于文字样式的,都能够继承; 所有关于盒子的、定位的、布局的属性都不能继承。
所以,如果我们的页面的文字,都是灰色,都是14px。那么就可以利用继承性:
1.js的入口函数和jquery入口函数的区别?
执行时间不同
window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。
$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。
编写个数不同
window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个
$(document).ready()可以同时编写多个,并且都可以得到执行
简化写法不同
window.onload没有简化写法
$(document).ready(function(){})可以简写成$(function(){});
2.jquery的值的操作哪个方法?
// 基本选择器
// 1.id选择器
$('#brother').css('color','black');
// 2.标签选择器
$('a').css('color','yellow')
// 3.类选择器
$('.item').css('background','#FC4708')
// 4.通配符选择器
// console.log($('*').html())
console.log($('a').val())
层级选择器
// 后代选择器
console.log($('div p'))
$('div p').css('color','red')
// 子代选择器
$('div >p').css('background','green')
// 毗邻选择器 匹配 所有紧接在#brother元素后的下一个元素
$('#brother+ li').css('color','yellow')
// 兄弟选择器
// 匹配所有#brother之后的所有兄弟姐妹元素
$('#brother~li').css('background','#996633')
// :first 获取第一个元素
$('li:first').text('真的吗?')
// :last 获取最后一个元素
$('li:last').html('真的吗?')
//一个给定索引值的元素
console.log($('p:eq(3)').text())
基本过滤选择器
//:first 获取第一个元素
$('li:first').text('真的吗?')
//:last 获取最后一个元素
$('li:last').html('我是最后一个元素?')
//:odd 匹配所有索引值为奇数的元素,从0开始计数
$('li:odd').css('color','green');
//:even 匹配所有索引值为偶数的元素,从0开始计数
$('li:even').css('color','red')
//:eq(index) 获取给定索引值的元素 从0开始计数
$('li:eq(1)').css('font-size','30px')
//:gt(index)匹配所有大于给定索引值的元素
$('li:gt(1)').css('font-size','40px')
//:lt(index) 匹配所有小于给定索引值的元素
$('li:lt(1)').css('font-size','40px')
//一个给定索引值的元素
console.log($('p:eq(3)').text())
//属性选择器
//标签名[属性名] 查找所有含有id属性的该标签名的元素
$("li[id]").css('color','red')
//[attr=value] 匹配给定的属性是某个特定值的元素
$('li[class=what]').css('font-size','30px')
//[attr!=value] 匹配所有不含有指定的属性,或者属性不等于特定值的元素
$('li[class!=what]').css('color','darkgreen')
//匹配给定的属性是以某些值开始的元素
$('input[name^=username]').css('background','red')
//匹配给定的属性是以某些值结尾的元素
$('input[name$=222]').css('background','yellow')
//匹配给定的属性是以包含某些值的元素
$("button[class*='btn']").css('background','#0000FF')
筛选选择器
//获取第n个元素 数值从0开始
$('span').eq(0).css('font-size','30px')
//first()获取第一个元素
$('span').first().css('background','red')
//last()获取最后一个元素
//.parent() 选择父亲元素
$('span').parent('.p1').css({width:'300px',height:'300px',background:'yellow'})
//.siblings()选择所有的兄弟元素
$('.list').siblings('li').css('color','red')
//.find()
//查找所有的后代元素
$('div').find('button').css('background','#313131')
3.jquery和js对象如何转化?
DOM对象转换成jquery对象
var box = document.getElementById('box');
console.log($(box));
jquery对象转化成DOM对象
第一种方式:
$('button')[0]
第二种方式:
$('button').get(0)
4.阐述一下js和jquery的关系?
Javascript是一门编程语言,我们用它来编写客户端浏览器脚本。
jQuery是javascript的一个库,包含多个可重用的函数,用来辅助我们简化javascript开发
jQuery能做的javascipt都能做到,而javascript能做的事情,jQuery不一定能做到
5.jquery的html属相操作是哪个方法?你认为是js中哪个方法封装来的?
jquery的属性操作模块分为四个部分:html属性操作,dom属性操作,类样式操作和值操作
html属性操作:是对html文档中的属性进行读取,设置和移除操作。比如attr()、removeAttr()
DOM属性操作:对DOM元素的属性进行读取,设置和移除操作。比如prop()、removeProp()
类样式操作:是指对DOM属性className进行添加,移除操作。比如addClass()、removeClass()、toggleClass()
值操作:是对DOM属性value进行读取和设置操作。比如html()、text()、val()
认为是js中 获取文档对象:document.documentElement 获取html:document.documentElement 获取body:document.body
6.列举jquery的文档操作的方法?以及他们的意思?
、插入操作
一、父元素.append(子元素) 追加某元素 父元素中添加新的元素
var oli = document.createElement('li');
oli.innerHTML = '哈哈哈'
//jquery中的dom操作
//1.append(content)追加 往父元素中添加新的元素
//content:string | element | jquery元素
$('ul').append('1233 ')
$('ul').append(oli)
//如果直接的内容是当前页面中的某些元素,那么这些元素将从原位置上消失。简言之,就是一个移动操作
$('ul').append($('#app'))
二、子元素.appendTo(父元素) 追加到某元素 子元素添加到父元素
$('天王盖地虎 ').appendTo($('ul')).addClass('hu')
三、prepend() 前置添加, 添加到父元素的第一个位置
$('ul').prepend('我是第一个 ')
四、prependTo 后置添加,第一个元素添加到父元素中
$('路飞学诚 ').prependTo('ul')
五、父.after(子) 在匹配的元素之后插入内容 与 子.insertAfter(父)
$('ul').after('我是一个h3标题 ')
$('我是一个h2标题 ').insertAfter('ul')
六、父.before(子) 在匹配的元素之前插入内容 与 子.insertBefor(父)
$('ul').before('我是一个h3标题 ')
$('我是一个h2标题 ').insertBefore('ul')
2、复制操作
clone() 克隆匹配的DOM元素并且选中这些克隆的副本
$('button').click(function() {
// 1.clone():克隆匹配的DOM元素并且选中这些克隆的副本。
// 2.clone(true):元素以及其所有的事件处理并且选中这些克隆的副本(简言之,副本具有与真身一样的事件处理能力)
$(this).clone(true).insertAfter(this);
})
3、替换操作
一、replaceWith():将所有匹配的元素替换成指定的HTML或DOM元素。
//将所有的h5标题替换为a标签
$('h5').replaceWith('hello world ')
//将所有h5标题标签替换成id为app的dom元素
$('h5').replaceWith($('#app'));
二、replaceAll():用匹配的元素替换掉所有 selector匹配到的元素
$('按钮 ').replaceAll('h4')
4、删除操作
一、remove() 删除节点后,事件也会删除(简言之,删除了整个标签)
$('ul').remove();
二、detach() 删除节点后,事件会保留
var $btn = $('button').detach()
//此时按钮能追加到ul中
$('ul').append($btn)
三、empty(): 清空元素中的所有后代节点
//清空掉ul中的子元素,保留ul
$('ul').empty()
7.对一个元素显示隐藏分别使用类控制(addClass和removeClass)和文档操作(append())来实现,并描述一下他们的区别?
addClass 和 removeClass是通过添加类名,删除类名 结合CSS属性 display: none,visibility: hidden来控制 元素显示和隐藏的。
append()是通过插入追加元素,追加的元素会从原来的位置消失。就是一个移动操作。改变了html结构。
8.列举jquery的筛选方法有哪些?重点
9.jquery的事件有哪些?
window.onload = function(){
var oBtn = document.getElementById('btn');
oBtn.addEventListener('click',function(){
console.log('btn处于事件捕获阶段');
}, true);
oBtn.addEventListener('click',function(){
console.log('btn处于事件冒泡阶段');
}, false); };
10.mouseout和mouseover以及mouseenter和mouseleave的区别?
mouseenter:当鼠标移入某元素时触发。
mouseleave:当鼠标移出某元素时触发。
mouseover:当鼠标移入某元素时触发,移入和移出其子元素时也会触发。
mouseout:当鼠标移出某元素时触发,移入和移出其子元素时也会触发。
mousemove:鼠标在某元素上移动时触发,即使在其子元素上也会触发。
mouseout、mouseover和mouseleave、mouseenter最大的区别,在于子元素连带触发。
11.写jquery的ajax的get请求方法和post请求方法?
jquery的post()方法
HTTP 请求:GET vs. POST
两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST。
GET - 从指定的资源请求数据
POST - 向指定的资源提交要处理的数据
GET 基本上用于从服务器获得(取回)数据。注释:GET 方法可能返回缓存数据。
POST 也可用于从服务器获取数据。不过,POST 方法不会缓存数据,并且常用于连同请求一起发送数据
与get()方法相比,post()方法多用于以POST方式向服务器发送数据,服务器接收到数据之后,进行处理,并将处理结果返回页面
语法:$.post(URL,data,callback);
//get()方式
$.ajax({
url:'./data/index.txt',
type:'get',
dataType:'text',
success:function(data){
$('p').html(data);
},
error:function(error){
console.log(error)
}
//post()方式
$.ajax({
url:'/index',
type:'post',
data:{name:'张三',age:12},
success:function(data){
$('p').html(data);
},
error:function(error){
console.log(error)
}
状态类 Bootstrap 必背的类名,常用
通过这些状态类可以为行或单元格设置颜色。
Class
描述
.active
鼠标悬停在行或单元格上时所设置的颜色
.success
标识成功或积极的动作
.info
标识普通的提示信息或动作
.warning
标识警告或需要用户注意
.danger
标识危险或潜在的带来负面影响的动作
ajax是什么
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。
AJAX = 异步 JavaScript 和 XML。
AJAX 是一种用于创建快速动态网页的技术。
通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
slibling的用法。改变按钮点击的变红色,其它变透明色。
你可能感兴趣的:(第5模块闯关练习)
程翔授《评价一篇记叙文》
行吟斯基
桂林十一中高一2中学生自读程老师学生文章板书课题师巡看。看完举手。问:它是记叙文。不商量。独立打分。学生评价打分。师:高低都正常,不受干扰。师巡,略评。打完举手。调查:分层次举手——高分先举手。最低分。最高95分。最低45分。女:差距太大!师:同一篇,相差55分。若是你的文章,愿落谁手?男:身临其境感觉。师:你有此经历?没也没关系。女:不优美……,结尾无升华……无感悟……师:辞藻不美?(师追问)男
15个小技巧,让我的Windows电脑更好用了!
曹元_
01.桌面及文档处理第一部分的技巧,主要是围绕桌面的一些基本操作,包括主题设置、常用文档文件快捷打开的多种方式等等。主题换色默认情况下,我们的Win界面可能就是白色的文档界面,天蓝色的图表背景,说不出哪里不好看,但是就是觉得不够高级。imageimage说到高级感,本能第一反应就会和暗色模式联想起来,如果我们将整个界面换成黑夜模式的话,它会是这样的。imageimage更改主题颜色及暗色模式,我们
(二)SAP Group Reporting (GR) 核心子模块功能及数据流向架构解析
数据如何从子公司流转到合并报表的全过程,即数据采集→合并引擎→报表输出,特别是HANA内存计算如何优化传统ETL瓶颈。SAPGroupReporting(GR)核心模块功能及数据流向的架构解析,涵盖核心组件、数据处理流程和关键集成点,适用于S/4HANA1809+版本:一、核心功能模块概览模块功能关键事务码/FioriApp数据采集(DataCollection)整合子公司财务数据(SAP/非SA
月光下的罪恶(5)
允歌玖沐
5.被孤立顾纨是转校过来的,进入学校后,回头率很高“诶诶诶,你看那女生,哪个系的?”“不知道没见过。”“看那样,一看就是个胆小的货。”顾纨当做没听到,更狠的话她都听过,更何况女生们耍心眼?“他爸爸是做黑生意的,估计女儿也不是什么好的,你以后离他一家子远点。”她走向自己要上课的教室,一进门,所有人的目光看向她,顾纨若无其事的走进教室,开始上课。下课,一群人站起来,但是很显然,她周围的一圈人都不愿意和
day15|前端框架学习和算法
universe_01
前端 算法 笔记
T22括号生成先把所有情况都画出来,然后(在满足什么情况下)把不符合条件的删除。T78子集要画树状图,把思路清晰。可以用暴力法、回溯法和DFS做这个题DFS深度搜索:每个边都走完,再回溯应用:二叉树搜索,图搜索回溯算法=DFS+剪枝T200岛屿数量(非常经典BFS宽度把树状转化成队列形式,lambda匿名函数“一次性的小函数,没有名字”setup语法糖:让代码更简洁好写的语法ref创建:基本类型的
贝多芬诞辰250周年纪念
万千星河赴远方
就算不是古典音乐爱好者,你也一定听说过贝多芬。作为古典音乐史上最伟大的音乐家之一,他不仅是古典主义风格的集大成者,同时也是浪漫主义风格的开创者。贝多芬肖像画(1813年)贝多芬的一生共创作了9部交响曲、36首钢琴奏鸣曲、10部小提琴奏鸣曲、16首弦乐四重奏、1部歌剧及2部弥撒曲等等。数量虽然不及前辈海顿、莫扎特多,但他几乎改造了当时所有的音乐表达形式,赋予了它们全新的价值,对后世音乐的发展产生了极
25-1-2019
树藤与海岛呢
hello八月来报道了今天看到了一篇文章就只想记下那两句话:良田千顷不过一日三餐广夏万间只睡卧榻三尺大概的意思就是要珍惜当下不要等来不及的时候才珍惜分享今天的两餐最近没有时间运动呢下个月补回好了说完了哈哈goodnight图片发自App图片发自App
力扣热题100-------54. 螺旋矩阵
海航Java之路
力扣 leetcode 矩阵 java
给你一个m行n列的矩阵matrix,请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]示例2:输入:matrix=[[1,2,3,4],[5,6,7,8],[9,10,11,12]]输出:[1,2,3,4,8,12,11,10,9,5,6,7]提示:m==matrix.lengthn
你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。
霖霖z
打卡人:周云日期:2018年11月09日【日精进打卡第180天】【知~学习】《六项精进》0遍共214遍《通篇》1遍共106遍《大学》2遍共347遍《坚强工作,温柔生活》ok《不抱怨的世界》104-108页《经典名句》你要记住,最重要的是:随时做好准备,为了你可能成为更好的自己,放弃现在的自己。【行~实践】一、修身:(对自己个人)1、坚持打卡二、齐家:(对家庭和家人)打扫卫生,接送孩子,洗衣做饭,陪
SpringMVC执行流程(原理),通俗易懂
国服冰
SpringMVC spring mvc
SpringMVC执行流程(原理),通俗易懂一、图解SpringMVC流程二、进一步理解Springmvc的执行流程1、导入依赖2、建立展示的视图3、web.xml4、spring配置文件springmvc-servlet5、Controller6、tomcat配置7、访问的url8、视图页面一、图解SpringMVC流程图为SpringMVC的一个较完整的流程图,实线表示SpringMVC框架提
现在发挥你的优势
爱生活的佑嘉
来和我做咨询的一些朋友,涉及到定位的,都会说,我不知道我的优势是什么,你能不能帮我看看?还有一些朋友,喜欢做各种测试来了解自己,测试过后,然并卵。今天,我想来聊聊优势,如何能了解自己的优势是什么。首先,我们要知道,如果要成为“不一般”的人,我们所做的事情,就要基于自身的优势。我做管理者十多年,看到每个员工都有不同的特长,有的擅长数字,有的擅长人际,有的擅长写作。这些知道自己优势并且在这方面刻意练习
贫穷家庭的孩子考上985以后会怎样?
Mellisa蜜思言
我出生在一个贫穷的农村家庭,据我妈说,我出生的时候才4斤多,而她生完我以后月子里就瘦到70斤。家里一直很穷,父母都是在菜市场卖菜的,家里还有几亩地种庄稼的。我很小开始就要去帮忙,暑假的生活就是帮忙去卖菜和割稻谷,那时候自己对于割稻谷这种事情有着莫名的恐惧,生怕自己长大以后还是每年都要过着割稻谷这种日子。父母因为忙于生计无暇顾及我的学习,幸好我因为看到他们这样子的生活,内心里有深深的恐惧感,驱使着我
48. 旋转图像 - 力扣(LeetCode)
Fiee-77
# 数组 leetcode 算法 python 数据结构 数组
题目:给定一个n×n的二维矩阵matrix表示一个图像。请你将图像顺时针旋转90度。你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例2:输入:matrix=[[5,1,9,11],[2,4,8,10],[13,3,6,
日更50天有什么收益?
星湾二宝
坚持在平台上日更50天了,平台也为我生成了日更50天徽章,小开心一下这份坚持。日更50天徽章那坚持50天都有哪些收益呢?收益一,就是最直观的那些钻和贝,我这边确实不太高,但是这些贝足够支撑我保持会员的资格,能够在发文的时候帮助友友们去除广告,方便阅读。钻和贝收益二,文章的收获,日更50天,坚持写作3.7万文字,书写的文字也从开始的流水账/碎碎念逐渐加入自己的思考和观点。以前,一个念头会一晃而过,如
Git 与 GitHub 的对比与使用指南
一念&
其它 git github
Git与GitHub的对比与使用指南在软件开发中,Git和GitHub是两个密切相关但本质不同的工具。下面我将逐步解释它们的定义、区别、核心概念以及如何协同使用,确保内容真实可靠,基于广泛的技术实践。1.什么是Git?Git是一个分布式版本控制系统,由LinusTorvalds于2005年创建。它的核心功能是跟踪代码文件的变化,帮助开发者管理项目历史记录、协作和回滚错误。Git是开源的,可以在本地
英伟达靠什么支撑起了4万亿?AI泡沫还能撑多久?
英伟达市值突破4万亿美元,既是AI算力需求爆发的直接体现,也暗含市场对未来的狂热预期。其支撑逻辑与潜在风险并存,而AI泡沫的可持续性则取决于技术、商业与地缘政治的复杂博弈。⚙️一、英伟达4万亿市值的核心支撑因素技术垄断与生态壁垒硬件优势:英伟达GPU在AI训练市场占有率超87%,H100芯片的FP16算力达1979TFLOPS,领先竞品3-5倍。CUDA生态:400万开发者构建的软件护城河,成为A
2019-06-05
第十七把巴鲁克
今天去实验田里实习,见到了福寿螺真的可怕且牛皮,六级也快来了,说实话还是害怕。我昨天考了环工原理,真的太难了,太烦了,理工科真的难,烦。实验报告还是没写,要抓紧速度抓紧时间,还是应该学会努力学习,远离一些不上进的事物。
Linux系统配置(应用程序)
1风天云月
Linux linux 应用程序 编译安装 rpm http
目录前言一、应用程序概述1、命令与程序的关系2、程序的组成3、软件包封装类型二、RPM1、RPM概述2、RPM用法三、编译安装1、解包2、配置3、编译4、安装5、启用httpd服务结语前言在Linux中的应用程序被视为将软件包安装到系统中后产生的各种文档,其中包括可执行文件、配置文件、用户手册等内容,这些文档被组织为一个有机的整体,为用户提供特定的功能,因此对于“安装软件包”与“安装应用程序”这两
第28章 汇编语言--- 异常处理
hummhumm
汇编 算法 开发语言 程序设计 高级语言 异常处理 汇编语言
在汇编语言中,异常处理是一个重要的概念,它涉及到处理器如何响应和处理程序运行时发生的非正常情况。异常可以是硬件错误(例如除零错误、非法指令)或者软件触发的中断(例如系统调用)。当发生异常时,处理器会暂停当前正在执行的程序,并转移到一个预先定义好的位置来处理这个异常。为了详细阐述第28章关于汇编语言中的异常处理,我们可以考虑一个简化的例子,展示异常处理的基本结构。请注意,实际的代码将取决于具体的处理
MotionLCM 部署优化 踩坑解决bug
AI算法网奇
aigc与数字人 深度学习宝典 文生motion
目录依赖项windowstorchok:渲染黑白图问题解决:humanml3d:sentence-t5-large下载数据:报错:Nomodulenamed'sentence_transformers'继续报错:fromtransformers.integrationsimportCodeCarbonCallback解决方法:推理相关转mesh:module‘matplotlib.cm‘hasno
中原焦点团队吴瑕瑜焦点解决初级第18期坚持分享第695天 2021年12月6号
卿安
中原焦点团队吴瑕瑜焦点解决初级第18期坚持分享第695天2021年12月6号相信相信的力量。很多时候我们忽视了相信的力量,当看到孩子遇到困难、挫折,或者可能犯错时,我们急于去帮忙,这至少部分暗含不相信孩子有能力自己解决,“等不及”,少了对孩子有权决定是否需要帮忙的尊重,缺乏界限,容易引起冲突,并影响孩子的独立能力。对孩子的成长,很多时候,家长的相信比具体帮助更重要。
高省邀请码哪个级别最高?高省原始高级邀请码500888
凌风导师
高省是杭州长孚科技有限公司开辟的一个项目(高省APP),已获数千万投资,主打外交电商+新零售,提供淘宝好省京东等主流电商途径的大额优惠券(直接在淘宝等途径购买是没有该优惠券的)。用户们可以利用这些软件享受折扣买东西优惠,一起来看看购物省钱app网上买东西省钱的软件有哪些吧!网购省钱软件靠谱吗包围淘宝等途径产品的左右,也便是你可以大概在高省买你的确想买的任何产品,并且享受额定优惠,优惠力度为-(大部
2021-会说话的人运气都不会太差-会说话的人更善于倾听(5)沉默、留白
12_德德
21、说话时,如想强调某一部分,一个有效方法是,以沉默留出空白。留出多大空白才好呢?7秒。22、沉默所营造的“空白”长度,说的人感觉到的,是实际长度的3倍,而听的人感觉到的,则只有实际长度的1/3。23、只要善于用“一直”来表达,就不会给人以不过是一时任性之感。能说“一直”的人,会得到周围的支持,在合适的时候想到你。24、要得到“是把好手”的高度评价,就要展示你对公司的热爱。特别是,如能对上司或公
恩小希美食成长日记之118:“摘星女神”王亚平归来,她的婚姻,治愈了多少职场女性的痛
恩小希
上周最为热闹的消息,无疑是神舟13号的三位航天英雄回来了.其中,最为瞩目的就是王亚平.她是我国首位进行太空行走的女航天员,也是为自己小女儿“摘星星的妈妈”。作为最受关注的职场妈妈,王亚平之所以能够成就这样一番事业,跟背后默默支持她的丈夫--赵鹏分不开。01王亚平1980年出生于山东烟台。父母都是地地道道的农民。王亚平这个姑娘从小体质好,一直练习长跑。高中时,空军来家乡招收女飞行员,作为体育班里唯一
企业级区块链平台Hyperchain核心原理剖析
boyedu
区块链 区块链 企业级区块链平台 Hyperchain
Hyperchain作为国产自主可控的企业级联盟区块链平台,其核心原理围绕高性能共识、隐私保护、智能合约引擎及可扩展架构展开,通过多模块协同实现企业级区块链网络的高效部署与安全运行。以下从核心架构、关键技术、性能优化、安全机制、应用场景五个维度展开剖析:一、核心架构:分层解耦与模块化设计Hyperchain采用分层架构,将区块链功能解耦为独立模块,支持灵活组合与扩展:P2P网络层由验证节点(VP)
力扣面试题07 - 旋转矩阵
茶猫_
leetcode 矩阵 算法 c语言
题目:给你一幅由N×N矩阵表示的图像,其中每个像素的大小为4字节。请你设计一种算法,将图像旋转90度。不占用额外内存空间能否做到?示例1:给定matrix=[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:[[7,4,1],[8,5,2],[9,6,3]]示例2:给定matrix=[[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,
车载刷写架构 --- 整车刷写中为何增加了ECU 队列刷写策略?
汽车电子实验室
电子电器架构——刷写方案 车载电子电气架构 架构 开发语言 车载诊断进阶篇 汽车中央控制单元HPC软件架构 关于网关转发性能引起的思考
我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师:周末洗了一个澡,换了一身衣服,出了门却不知道去哪儿,不知道去找谁,漫无目的走着,大概这就是成年人最深的孤独吧!旧人不知我近况,新人不知我过往,近况不该旧人知,过往不与新人讲。纵你阅人何其多,再无一人恰似我。时间不知不觉中,来到新的一年。2025开始新的忙碌。成年人的我也不知道去哪里渡
在线人数统计业务设计(场景八股文)
业务问题在当经的网站中,在线人数的实时统计已经是一个必不可少的模块了,并且该统计功能最好能够按不同的时间间隔做的统计,现在需要你设计一个在线人数统计的模块,你应该怎么进行设计的呢?背景一个网校下会有多个学员。目前平台大概有十个,平台对应的网校大概五十几个,平均一个网校会有5w个用户,预计总人数为200w,最该学员的在线人数在10w左右。设计思路最开始的时候,想到的就是使用mysql直接实现,但是明
通义万相2.2:开启高清视频生成新纪元
Liudef06小白
特殊专栏 AIGC 人工智能 人工智能 通义万相2.2 图生视频
通义万相2.2:开启高清视频生成新纪元2025年7月28日,中国AI领域迎来里程碑时刻——通义万相团队正式开源其革命性视频生成模型Wan2.2的核心权重,这标志着开源社区首次获得支持720P高清视频生成的先进模型架构。一、架构革新:混合专家系统1.1MoE视频扩散架构通义万相2.2首次将混合专家(MoE)架构引入视频扩散模型,通过双专家系统实现计算效率与模型容量的平衡:classMoEVideoD
最新阿里四面面试真题46道:面试技巧+核心问题+面试心得
风平浪静如码
前言做技术的有一种资历,叫做通过了阿里的面试。这些阿里Java相关问题,都是之前通过不断优秀人才的铺垫总结的,先自己弄懂了再去阿里面试,不然就是去丢脸,被虐。希望对大家帮助,祝面试成功,有个更好的职业规划。一,阿里常见技术面1、微信红包怎么实现。2、海量数据分析。3、测试职位问的线程安全和非线程安全。4、HTTP2.0、thrift。5、面试电话沟通可能先让自我介绍。6、分布式事务一致性。7、ni
Js函数返回值
_wy_
js return
一、返回控制与函数结果,语法为:return 表达式;作用: 结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 二、返回控制语法为:return;作用: 结束函数执行,返回调用函数,而且把undefined作为函数的结果 在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<a>元素,页面会跳转到该元素href属性
MySQL 的 char 与 varchar
bylijinnan
mysql
今天发现,create table 时,MySQL 4.1有时会把 char 自动转换成 varchar
测试举例:
CREATE TABLE `varcharLessThan4` (
`lastName` varchar(3)
) ;
mysql> desc varcharLessThan4;
+----------+---------+------+-
Quartz——TriggerListener和JobListener
eksliang
TriggerListener JobListener quartz
转载请出自出处:http://eksliang.iteye.com/blog/2208624 一.概述
listener是一个监听器对象,用于监听scheduler中发生的事件,然后执行相应的操作;你可能已经猜到了,TriggerListeners接受与trigger相关的事件,JobListeners接受与jobs相关的事件。
二.JobListener监听器
j
oracle层次查询
18289753290
oracle;层次查询;树查询
.oracle层次查询(connect by)
oracle的emp表中包含了一列mgr指出谁是雇员的经理,由于经理也是雇员,所以经理的信息也存储在emp表中。这样emp表就是一个自引用表,表中的mgr列是一个自引用列,它指向emp表中的empno列,mgr表示一个员工的管理者,
select empno,mgr,ename,sal from e
通过反射把map中的属性赋值到实体类bean对象中
酷的飞上天空
javaee 泛型 类型转换
使用过struts2后感觉最方便的就是这个框架能自动把表单的参数赋值到action里面的对象中
但现在主要使用Spring框架的MVC,虽然也有@ModelAttribute可以使用但是明显感觉不方便。
好吧,那就自己再造一个轮子吧。
原理都知道,就是利用反射进行字段的赋值,下面贴代码
主要类如下:
import java.lang.reflect.Field;
imp
SAP HANA数据存储:传统硬盘的瓶颈问题
蓝儿唯美
HANA
SAPHANA平台有各种各样的应用场景,这也意味着客户的实施方法有许多种选择,关键是如何挑选最适合他们需求的实施方案。
在 《Implementing SAP HANA》这本书中,介绍了SAP平台在现实场景中的运作原理,并给出了实施建议和成功案例供参考。本系列文章节选自《Implementing SAP HANA》,介绍了行存储和列存储的各自特点,以及SAP HANA的数据存储方式如何提升空间压
Java Socket 多线程实现文件传输
随便小屋
java socket
高级操作系统作业,让用Socket实现文件传输,有些代码也是在网上找的,写的不好,如果大家能用就用上。
客户端类:
package edu.logic.client;
import java.io.BufferedInputStream;
import java.io.Buffered
java初学者路径
aijuans
java
学习Java有没有什么捷径?要想学好Java,首先要知道Java的大致分类。自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE
APP推广
aoyouzi
APP 推广
一,免费篇
1,APP推荐类网站自主推荐
最美应用、酷安网、DEMO8、木蚂蚁发现频道等,如果产品独特新颖,还能获取最美应用的评测推荐。PS:推荐简单。只要产品有趣好玩,用户会自主分享传播。例如足迹APP在最美应用推荐一次,几天用户暴增将服务器击垮。
2,各大应用商店首发合作
老实盯着排期,多给应用市场官方负责人献殷勤。
3,论坛贴吧推广
百度知道,百度贴吧,猫扑论坛,天涯社区,豆瓣(
JSP转发与重定向
百合不是茶
jsp servlet Java Web jsp转发
在servlet和jsp中我们经常需要请求,这时就需要用到转发和重定向;
转发包括;forward和include
例子;forwrad转发; 将请求装法给reg.html页面
关键代码;
req.getRequestDispatcher("reg.html
web.xml之jsp-config
bijian1013
java web.xml servlet jsp-config
1.作用:主要用于设定JSP页面的相关配置。
2.常见定义:
<jsp-config>
<taglib>
<taglib-uri>URI(定义TLD文件的URI,JSP页面的tablib命令可以经由此URI获取到TLD文件)</tablib-uri>
<taglib-location>
TLD文件所在的位置
JSF2.2 ViewScoped Using CDI
sunjing
CDI JSF 2.2 ViewScoped
JSF 2.0 introduced annotation @ViewScoped; A bean annotated with this scope maintained its state as long as the user stays on the same view(reloads or navigation - no intervening views). One problem w
【分布式数据一致性二】Zookeeper数据读写一致性
bit1129
zookeeper
很多文档说Zookeeper是强一致性保证,事实不然。关于一致性模型请参考http://bit1129.iteye.com/blog/2155336
Zookeeper的数据同步协议
Zookeeper采用称为Quorum Based Protocol的数据同步协议。假如Zookeeper集群有N台Zookeeper服务器(N通常取奇数,3台能够满足数据可靠性同时
Java开发笔记
白糖_
java开发
1、Map<key,value>的remove方法只能识别相同类型的key值
Map<Integer,String> map = new HashMap<Integer,String>();
map.put(1,"a");
map.put(2,"b");
map.put(3,"c"
图片黑色阴影
bozch
图片
.event{ padding:0; width:460px; min-width: 460px; border:0px solid #e4e4e4; height: 350px; min-heig
编程之美-饮料供货-动态规划
bylijinnan
动态规划
import java.util.Arrays;
import java.util.Random;
public class BeverageSupply {
/**
* 编程之美 饮料供货
* 设Opt(V’,i)表示从i到n-1种饮料中,总容量为V’的方案中,满意度之和的最大值。
* 那么递归式就应该是:Opt(V’,i)=max{ k * Hi+Op
ajax大参数(大数据)提交性能分析
chenbowen00
Web Ajax 框架 浏览器 prototype
近期在项目中发现如下一个问题
项目中有个提交现场事件的功能,该功能主要是在web客户端保存现场数据(主要有截屏,终端日志等信息)然后提交到服务器上方便我们分析定位问题。客户在使用该功能的过程中反应点击提交后反应很慢,大概要等10到20秒的时间浏览器才能操作,期间页面不响应事件。
根据客户描述分析了下的代码流程,很简单,主要通过OCX控件截屏,在将前端的日志等文件使用OCX控件打包,在将之转换为
[宇宙与天文]在太空采矿,在太空建造
comsci
我们在太空进行工业活动...但是不太可能把太空工业产品又运回到地面上进行加工,而一般是在哪里开采,就在哪里加工,太空的微重力环境,可能会使我们的工业产品的制造尺度非常巨大....
地球上制造的最大工业机器是超级油轮和航空母舰,再大些就会遇到困难了,但是在空间船坞中,制造的最大工业机器,可能就没
ORACLE中CONSTRAINT的四对属性
daizj
oracle CONSTRAINT
ORACLE中CONSTRAINT的四对属性
summary:在data migrate时,某些表的约束总是困扰着我们,让我们的migratet举步维艰,如何利用约束本身的属性来处理这些问题呢?本文详细介绍了约束的四对属性: Deferrable/not deferrable, Deferred/immediate, enalbe/disable, validate/novalidate,以及如
Gradle入门教程
dengkane
gradle
一、寻找gradle的历程
一开始的时候,我们只有一个工程,所有要用到的jar包都放到工程目录下面,时间长了,工程越来越大,使用到的jar包也越来越多,难以理解jar之间的依赖关系。再后来我们把旧的工程拆分到不同的工程里,靠ide来管理工程之间的依赖关系,各工程下的jar包依赖是杂乱的。一段时间后,我们发现用ide来管理项程很不方便,比如不方便脱离ide自动构建,于是我们写自己的ant脚本。再后
C语言简单循环示例
dcj3sjt126com
c
# include <stdio.h>
int main(void)
{
int i;
int count = 0;
int sum = 0;
float avg;
for (i=1; i<=100; i++)
{
if (i%2==0)
{
count++;
sum += i;
}
}
avg
presentModalViewController 的动画效果
dcj3sjt126com
controller
系统自带(四种效果):
presentModalViewController模态的动画效果设置:
[cpp]
view plain
copy
UIViewController *detailViewController = [[UIViewController al
java 二分查找
shuizhaosi888
二分查找 java二分查找
需求:在排好顺序的一串数字中,找到数字T
一般解法:从左到右扫描数据,其运行花费线性时间O(N)。然而这个算法并没有用到该表已经排序的事实。
/**
*
* @param array
* 顺序数组
* @param t
* 要查找对象
* @return
*/
public stati
Spring Security(07)——缓存UserDetails
234390216
ehcache 缓存 Spring Security
Spring Security提供了一个实现了可以缓存UserDetails的UserDetailsService实现类,CachingUserDetailsService。该类的构造接收一个用于真正加载UserDetails的UserDetailsService实现类。当需要加载UserDetails时,其首先会从缓存中获取,如果缓存中没
Dozer 深层次复制
jayluns
VO maven po
最近在做项目上遇到了一些小问题,因为架构在做设计的时候web前段展示用到了vo层,而在后台进行与数据库层操作的时候用到的是Po层。这样在业务层返回vo到控制层,每一次都需要从po-->转化到vo层,用到BeanUtils.copyProperties(source, target)只能复制简单的属性,因为实体类都配置了hibernate那些关联关系,所以它满足不了现在的需求,但后发现还有个很
CSS规范整理(摘自懒人图库)
a409435341
html UI css 浏览器
刚没事闲着在网上瞎逛,找了一篇CSS规范整理,粗略看了一下后还蛮有一定的道理,并自问是否有这样的规范,这也是初入前端开发的人一个很好的规范吧。
一、文件规范
1、文件均归档至约定的目录中。
具体要求通过豆瓣的CSS规范进行讲解:
所有的CSS分为两大类:通用类和业务类。通用的CSS文件,放在如下目录中:
基本样式库 /css/core
C++动态链接库创建与使用
你不认识的休道人
C++ dll
一、创建动态链接库
1.新建工程test中选择”MFC [dll]”dll类型选择第二项"Regular DLL With MFC shared linked",完成
2.在test.h中添加
extern “C” 返回类型 _declspec(dllexport)函数名(参数列表);
3.在test.cpp中最后写
extern “C” 返回类型 _decls
Android代码混淆之ProGuard
rensanning
ProGuard
Android应用的Java代码,通过反编译apk文件(dex2jar、apktool)很容易得到源代码,所以在release版本的apk中一定要混淆一下一些关键的Java源码。
ProGuard是一个开源的Java代码混淆器(obfuscation)。ADT r8开始它被默认集成到了Android SDK中。
官网:
http://proguard.sourceforge.net/
程序员在编程中遇到的奇葩弱智问题
tomcat_oracle
jquery 编程 ide
现在收集一下:
排名不分先后,按照发言顺序来的。
1、Jquery插件一个通用函数一直报错,尤其是很明显是存在的函数,很有可能就是你没有引入jquery。。。或者版本不对
2、调试半天没变化:不在同一个文件中调试。这个很可怕,我们很多时候会备份好几个项目,改完发现改错了。有个群友说的好: 在汤匙
解决maven-dependency-plugin (goals "copy-dependencies","unpack") is not supported
xp9802
dependency
解决办法:在plugins之前添加如下pluginManagement,二者前后顺序如下:
[html]
view plain
copy
<build>
<pluginManagement