网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月04日漏签0天
前端吧 关注:224,195贴子:1,386,397
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 1 2 下一页 尾页
  • 15回复贴,共2页
  • ,跳到 页  
<<返回前端吧
>0< 加载中...

牛课网里面还是有难题的

  • 只看楼主
  • 收藏

  • 回复
  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
链接:https://www.nowcoder.com/questionTerminal/b403d1051e5d4568912e6d265e1e2cde
来源:牛客网
页面上存在id为jsBlink的下划线闪动节点,请按照如下需求实现 output 函数
1、函数 output 接收一个字符串参数,每隔200毫秒在闪动节点之前逐个显示字符
2、请新建span节点放置每个字符,其中span必须存在class "word",并随机加上 color0 ~ color23 中的任一个class(请使用系统随机函数)
3、每次输出指定字符串前,请将闪动节点之前的所有其他节点移除
4、不要销毁或者重新创建闪动节点
5、如果输出字符为空格、<、>,请分别对其进行HTML转义,如果是\n请直接输出<br />,其他字符不需要做处理
6、请不要手动调用output函数
7、当前界面为系统执行 output('hello world\n你好世界') 之后,最终的界面,过程请参考以下图片
8、请不要手动修改html和css
9、不要使用第三方插件
虽然写了没什么用,但是实现的难度真的不低。


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
<div class="content">
<span class="word color23">h</span>
<span class="word color22">e</span>
<span class="word color4">l</span>
<span class="word color24">l</span>
<span class="word color17">o</span>
<span class="word color2">&nbsp;</span>
<span class="word color9">w</span>
<span class="word color3">o</span>
<span class="word color1">r</span>
<span class="word color23">l</span>
<span class="word color15">d</span>
<br>
<span class="word color15">你</span>
<span class="word color13">好</span>
<span class="word color16">世</span>
<span class="word color19">界</span>
<span class="blink" id="jsBlink">|</span>
</div>


2025-06-04 05:54:38
广告
  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
html, body {margin: 0;}
.color1 {color: #E60012;}
.color2 {color: #EB6100;}
.color3 {color: #F39800;}
.color4 {color: #FCC800;}
.color5 {color: #FFF100;}
.color6 {color: #CFDB00;}
.color7 {color: #8FC31F;}
.color8 {color: #22AC38;}
.color9 {color: #009944;}
.color10 {color: #009B6B;}
.color11 {color: #009E96;}
.color12 {color: #00A0C1;}
.color13 {color: #00A0E9;}
.color14 {color: #0086D1;}
.color15 {color: #0068B7;}
.color16 {color: #00479D;}
.color17 {color: #1D2088;}
.color18 {color: #601986;}
.color19 {color: #920783;}
.color20 {color: #BE0081;}
.color21 {color: #E4007F;}
.color22 {color: #E5006A;}
.color23 {color: #E5004F;}
.color24 {color: #E60033;}
.word {font-size: 20px;}
.content {text-align: center;font-size:0;}
.blink {
font-size: 20px;
animation: fade 500ms infinite;
-webkit-animation: fade 500ms infinite;
}
@keyframes fade {
from {opacity: 1.0;}
50% {opacity: 0;}
to {opacity: 1.0;}
}


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
function output(str) {
//删除原有结点
var contents = document.getElementsByClassName('content');
var jsBlink = document.getElementById('jsBlink');
var childs = contents[0].childNodes;
while(childs.length > 0){
if(childs[0] == jsBlink){
break;
}
contents[0].removeChild(childs[0]);
}
var i = 0;
//每隔200毫秒输出字符
var fun = setInterval(function(){
if(i == str.length) clearInterval(fun);
else{
var c = str[i];
if(c == '\n'){
console.log(c);
var br = document.createElement('br');
contents[0].insertBefore(br, jsBlink);
}else{
var newSpan = document.createElement('span');
newSpan.className = "word color" + (Math.floor(Math.random() * 24) + 1);
if(c == '<'){
c = '&lt';
}else if(c == '>'){
c = '&gt';
}else if(c == ' '){
c = '&nbsp';
}
newSpan.innerHTML = c;
contents[0].insertBefore(newSpan, jsBlink);
}
i++;
}
}, 200);
}
output('hello world\n你好世界');


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
下面是购物车,我把它修改了一下。


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
<table id="jsTrolley">
<thead>
<tr>
<th>名称</th>
<th>价格</th>
<th>操作</th>
<th><a onclick="adddan();" href="javascript:void(0);">单行添加</a></th>
</tr>
</thead>
<tbody>
<tr>
<td>产品1</td>
<td>10.00</td>
<td>
<a id='xiugai' href="javascript:void(0);">修改</a>--<a id='shanchu' href="javascript:void(0);">删除</a>
</td>
</tr>
<tr>
<td>产品2</td>
<td>30.20</td>
<td>
<a id='xiugai' href="javascript:void(0);">修改</a>--<a id='shanchu' href="javascript:void(0);">删除</a>
</td>
</tr>
<tr>
<td>产品3</td>
<td>20.50</td>
<td>
<a id='xiugai' href="javascript:void(0);">修改</a>--<a id='shanchu' href="javascript:void(0);">删除</a>
</td>
</tr>
</tbody>
<tfoot>
<tr>
<th>总计</th>
<td colspan="2">60.70(3件商品)</td>
</tr>
</tfoot>
</table>


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
body,html{
padding: 0;
margin: 0;
font-size: 14px;
color: #000000;
}
table{
border-collapse: collapse;
width: 100%;
table-layout: fixed;
}
thead{
background: #3d444c;
color: #ffffff;
}
td,th{
border: 1px solid #e1e1e1;
padding: 0;
height: 30px;
line-height: 30px;
text-align: center;
}


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
// function adddan(obg){
// var str = '';
// var tbody = document.querySelector('tbody');
// str = `<tr><td>` + obg[0].addname + `</td><td>` +
// parseInt(obg[0].addprice).toFixed(2) +
// `</td><td><a id='xiugai' href="javascript:void(0);">修改</a>--<a id='shanchu' href="javascript:void(0);">删除</a></td></tr>`;
// console.log('obg.name='+obg[0].addname);
// tbody.innerHTML += str;
// count();
// }
//单行添加
function adddan(){
var addname=unescape (prompt('输入产品名称'));
var addprice=unescape (prompt('输入产品价格'));
var str = '';
var tbody = document.querySelector('tbody');
str = `<tr><td>` + addname + `</td><td>` +
parseInt(addprice).toFixed(2) +
`</td><td><a id='xiugai' href="javascript:void(0);">修改</a>--<a id='shanchu' href="javascript:void(0);">删除</a></td></tr>`;
tbody.innerHTML += str;
count();
}
function add(items) {
var str = '';
var tbody = document.querySelector('tbody');
for (var i = 0; i < items.length; i++) {
str += `<tr><td>` + items[i].name + `</td><td>` +
parseInt(items[i].price).toFixed(2) +
`</td><td><a id='xiugai' href="javascript:void(0);">修改</a>--<a id='shanchu' href="javascript:void(0);">删除</a></td></tr>`;
}
tbody.innerHTML += str;
count();
}
function bind() {
var tbody = document.querySelector('tbody');
var del = tbody.querySelectorAll('a');
tbody.addEventListener('click', function(event) {
var el = event.target;
// el.parentNode
// 删除
if (el.id === 'shanchu') {
// console.log('shi='+el.parentNode.parentNode);
tbody.removeChild(el.parentNode.parentNode);
count();
}
//修改
if (el.id === 'xiugai') {
var gainame=prompt('输入产品名称');
var gaiprice=prompt('输入产品价格');;
var shang1=el.parentNode;
var shang2=shang1.parentNode;
shang2.children[0].innerHTML =gainame;
shang2.children[1].innerHTML =parseInt(gaiprice).toFixed(2);
var xianame=shang2.children[0].innerHTML;
var xiaprice=shang2.children[1].innerHTML;
console.log(xianame);
console.log(xiaprice);
// tbody
// tbody.removeChild(el.parentNode.parentNode);
// count();
}
});
}
function count() {
var tbody = document.querySelector('tbody');
var tr = tbody.querySelectorAll('tr');
var tfoot = document.querySelector('tfoot');
var td = tfoot.querySelector('td');
// console.log(tr[1]);
var sum = 0;
for (var i = 0; i < tr.length; i++) {
sum += parseFloat(tr[i].children[1].innerHTML);
}
td.innerHTML = sum.toFixed(2) + '(' + tr.length + '件商品)';
}
// var obg=[{
// addname: '产品1',
// addprice: '20'
// }]
// adddan(obg);
var items = [{
name: '产品1',
price: '20'
},
{
name: '产品2',
price: '20'
}, {
name: '产品3',
price: '10'
}, {
name: '产品4',
price: '20'
}, {
name: '产品5',
price: '10'
}
]
add(items);
bind();


2025-06-04 05:48:38
广告
  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
去重好像没有通过,但是我还是喜欢这样,因为简单,哈哈。


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
var arr=[];
arr[0]='false';
arr[1]='true';
arr[2]='undefined';
arr[3]='null';
arr[4]='NaN';
arr[5]='0';
arr[6]='1';
arr[7]='{}';
arr[8]='{}';
arr[9]='a';
arr[10]='a';
arr[11]='NaN';
console.log(arr);
var xing=[]
for(var a = 0; a < arr.length; a++){
if(xing.indexOf(arr[a]) == -1){
xing.push(arr[a]);
}
}
console.log('arr去重后='+xing);


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
表格排序题


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
<table>
<thead>
<tr>
<th>id</th>
<th>price</th>
<th>sales</th>
</tr>
</thead>
<tbody id="jsList">
<tr>
<td>1</td>
<td>10.0</td>
<td>800</td>
</tr>
<tr>
<td>2</td>
<td>30.0</td>
<td>600</td>
</tr>
<tr>
<td>3</td>
<td>20.5</td>
<td>700</td>
</tr>
<tr>
<td>4</td>
<td>40.5</td>
<td>500</td>
</tr>
<tr>
<td>5</td>
<td>60.5</td>
<td>300</td>
</tr>
<tr>
<td>6</td>
<td>50.0</td>
<td>400</td>
</tr>
<tr>
<td>7</td>
<td>70.0</td>
<td>200</td>
</tr>
<tr>
<td>8</td>
<td>80.5</td>
<td>100</td>
</tr>
</tbody>
</table>


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
<script>
function sort(type, order) {
if(type == "id"){
type = 0;
}else if(type == "price"){
type = 1;
}else if(type == "sales"){
type = 2;
};
var tbody = document.querySelector('tbody');
// console.log(tbody);
var body_tr = tbody.querySelectorAll('tr');
var arr_tr = [...body_tr];
arr_tr.sort(function(a, b) {
console.log(a);
var td1 = a.children[type].innerHTML;
var td2 = b.children[type].innerHTML;
if(order === 'asc') {
return td1 - td2;
} else if(order === 'desc') {
return td2 - td1;
}
});
arr_tr.forEach(item => tbody.appendChild(item));
}
sort('price', 'asc');
</script>


  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
表格排序的...body_tr我还不是很懂用什么用


2025-06-04 05:42:38
广告
  • 贴吧用户_0PJCJ98
  • 武林新贵
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
明天在重新刷完正侧就去搞他的机试考试了,希望能过,呵呵。


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 1 2 下一页 尾页
  • 15回复贴,共2页
  • ,跳到 页  
<<返回前端吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示