javascript - 操作网页中的部分 - 创建、扩展

标签 javascript html user-interface gmail

我有 3 个问题:

如何在网页中创建不同的部分 - 例如 Gmail?

在设计 HTML/Javascript 页面时,如果您检查 Gmail,将鼠标指向收件箱,展开该部分,然后将鼠标移至右侧,将其返回到相同的位置 - 如何做到这一点?他们使用了什么技术?

他们的滚动条有同样的问题 - 如何将普通滚动条的样式更改为我想要的不同样式?

最佳答案

首先,您可以将组划分为 div,因此得名。但是 Javascript 有一个相当简单的代码,这是我使用的整个代码

<p align="center" class="style1"><script language="JavaScript1.2">

var tickercontents=new Array()
tickercontents[0]='<strong>(text here)</strong></a>'
tickercontents[1]='<strong>(text here)</strong><a>'
tickercontents[2]='<strong>(text here)</strong><a>'


//configure the below 2 variables to set the width/background color of the ticker
var tickerwidth='760px'
var tickerbgcolor='#CC66FF'

//configure the below variable to determine the delay between ticking of messages (in         miliseconds)
var tickdelay=6000

////Do not edit past this line////////////////

var ie4=document.all
var ns6=document.getElementById
var ns4=document.layers

var currentmessage=0
var tickercontentstotal=''

function changetickercontent(){
if (ns4){
tickerobj.document.tickernssub.document.write('<b><a href="#" onClick="return      expandlist(event)">Expand</a></b> | '+tickercontents[currentmessage])
tickerobj.document.tickernssub.document.close()
}
else if (ie4||ns6){
tickerobj.innerHTML=tickercontents[currentmessage]
previousmessage=(currentmessage==0)? tickercontents.length-1 : currentmessage-1
tickerexpand_item=ns6? document.getElementById("expand"+currentmessage) :             eval("expand"+currentmessage)
tickerexpand_previousitem=ns6? document.getElementById("expand"+previousmessage) :     eval("expand"+previousmessage)
tickerexpand_previousitem.className=""
tickerexpand_item.className="expandhighlight"
}

currentmessage=(currentmessage==tickercontents.length-1)? 0 : currentmessage+1
setTimeout("changetickercontent()",tickdelay)
}

function start_ticking(){
if (ns4) document.tickernsmain.visibility="show"
tickerobj=ie4? tickerlist : ns6? document.getElementById("tickerlist") : ns4?     document.tickernsmain : ""
tickerexpandobj=ie4? tickerexpand : ns6? document.getElementById("tickerexpand") : ns4?     document.expandlayer : ""

for (i=0;i<tickercontents.length;i++) //get total scroller contents
tickercontentstotal+='<div id="expand'+i+'">- '+tickercontents[i]+'</div>'
if (ie4||ns6)
tickerexpandobj.innerHTML=tickercontentstotal
else{
tickerexpandobj.document.write(tickercontentstotal)
tickerexpandobj.document.close()
}
changetickercontent()
}

function expandlist(e){
if (ie4||ns6){
tickerexpand_parent=ie4? tickerexpand.parentElement :         document.getElementById("tickerexpand").parentNode
tickerexpand_parent.style.display=(tickerexpand_parent.style.display=="none")? "" :     "none"
}
else{
document.expandlayer.left=e.pageX-e.layerX
document.expandlayer.top= e.pageY-e.layerY+20
document.expandlayer.visibility=(document.expandlayer.visibility=="hide")? "show" :     "hide"
return false
}
}

if (ie4||ns6)
document.write('<table border="0" style="width:'+tickerwidth+';border:1px solid     black;text-indent:2px" bgcolor="'+tickerbgcolor+'" cellspacing="0" cellpadding="0"><tr><td     width="90%" id="tickerlist" bgcolor="'+tickerbgcolor+'"></td><td width="10%"     bgcolor="'+tickerbgcolor+'"><div id="listbutton" onClick="expandlist()">Expand</div></td>    </tr><tr style="display:none"><td id="tickerexpand" width="90%" bgcolor="'+tickerbgcolor+'">     </td><td width="10%"></td></tr></table>')

window.onload=start_ticking
</script>

关于javascript - 操作网页中的部分 - 创建、扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8549257/

相关文章:

javascript - javascript中字符串比较特殊字符

javascript - 函数包装器在类上的性能基准测试与仅构造函数调用调用和 HaveSameMap 的对比

javascript - 难倒,初学者javascript函数

html - 更改列表中点内的行高(不在点之间)

javascript - 选择 onChange 事件

javascript - async void 的 typedef 是什么

javascript - Selenium:如何跟踪 DOM 操作以查找元素的可见性?

java - GUI 没有按应有的方式更新

java - 如何将 ActionListener 添加到 ArrayList 中的按钮?

javascript - YUI 有官方的 irc channel 吗?