PDA

View Full Version : Always on top message



Ridge
11-05-2006, 02:56 PM
1) Script Title:
Always on top message

2) Script URL (on DD):
http://www.dynamicdrive.com/dynamicindex10/topmsg.htm

3) Describe problem:
Hi! I need help with the Always on top message-script. I've been stuck with a problem I can't fix for two days now. I'm using the script on http://www.bakkercomputeropleidingen.nl/v2, but for some reason it doesn't go to the bottom of the page, and it doesn't scroll either. I've already asked this question on two other forums till I discovered this one.. But nobody can find out what the problem is. If you can help me out here, you're my hero for sure! :)

Thanks in advance

jscheuer1
11-05-2006, 06:29 PM
That script is out of date, use this version:


//Always-on-top message Script- ? Dynamic Drive (www.dynamicdrive.com)
//For full source code, and Terms Of use, visit dynamicdrive.com
//This credit MUST stay intact for use

//enter the message you wish to be shown, including html tags
var message='<b><font color=000000 size=5>Help us spread the word. Please <a href="../link.htm">link to us</a>!</font></b>'

//enter a color name or hex to be used as the background color of the message
var backgroundcolor="#FFFF8A"

//enter 1 for always display, 2 for ONCE per browser session
var displaymode=1

//Set duration message should appear on screen, in seconds (10000=10 sec, 0=perpetual)
var displayduration=0

//enter 0 for non-flashing message, 1 for flashing
var flashmode=1
//if above is set to flashing, enter the flash-to color below
var flashtocolor="lightyellow"


///////////////do not edit below this line////////////////////////////////////////

function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
}

var ie=document.all
var ieNOTopera=document.all&&navigator.userAgent.indexOf("Opera")==-1

function regenerate(){
window.location.reload()
}

function regenerate2(){
if (document.layers)
setTimeout("window.onresize=regenerate",400)
}

var which=0

function flash(){
if (which==0){
if (document.layers)
topmsg_obj.bgColor=flashtocolor
else
topmsg_obj.style.backgroundColor=flashtocolor
which=1
}
else{
if (document.layers)
topmsg_obj.bgColor=backgroundcolor
else
topmsg_obj.style.backgroundColor=backgroundcolor
which=0
}
}

if (ie||document.getElementById)
document.write('<div id="topmsg" style="position:absolute;visibility:hidden">'+message+'</div>')

var topmsg_obj=ie? document.all.topmsg : document.getElementById? document.getElementById("topmsg") : document.topmsg

function positionit(){
var dsocleft=ie? iecompattest().scrollLeft : pageXOffset
var dsoctop=ie? iecompattest().scrollTop : pageYOffset
var window_width=ieNOTopera? iecompattest().clientWidth : window.innerWidth-20
var window_height=ieNOTopera? iecompattest().clientHeight : window.innerHeight

if (ie||document.getElementById){
topmsg_obj.style.left=parseInt(dsocleft)+window_width/2-topmsg_obj.offsetWidth/2+'px'
topmsg_obj.style.top=parseInt(dsoctop)+parseInt(window_height)-topmsg_obj.offsetHeight-4+'px'
}
else if (document.layers){
topmsg_obj.left=dsocleft+window_width/2-topmsg_obj.document.width/2
topmsg_obj.top=dsoctop+window_height-topmsg_obj.document.height-5
}
}

function setmessage(){
if (displaymode==2&&(!display_msg_or_not()))
return
if (document.layers){
topmsg_obj=new Layer(window.innerWidth)
topmsg_obj.bgColor=backgroundcolor
regenerate2()
topmsg_obj.document.write(message)
topmsg_obj.document.close()
positionit()
topmsg_obj.visibility="show"
if (displayduration!=0)
setTimeout("topmsg_obj.visibility='hide'",displayduration)
}
else{
positionit()
topmsg_obj.style.backgroundColor=backgroundcolor
topmsg_obj.style.visibility="visible"
if (displayduration!=0)
setTimeout("topmsg_obj.style.visibility='hidden'",displayduration)
}
setInterval("positionit()",100)
if (flashmode==1)
setInterval("flash()",1000)
}

function get_cookie(Name) {
var search = Name + "="
var returnvalue = ""
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) {
offset += search.length
end = document.cookie.indexOf(";", offset)
if (end == -1)
end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}

function display_msg_or_not(){
if (get_cookie("displaymsg")==""){
document.cookie="displaymsg=yes"
return true
}
else
return false
}

if (document.layers||ie||document.getElementById)
window.onload=setmessage

Also, due to your styles, the blinking effect does not work properly in FF. If you want it to, this style block at the end of your head section will take care of that:


<style type="text/css">
#topmsg:hover, #topmsg a:hover {
background-color:inherit;
}
</style>

Ridge
11-05-2006, 07:17 PM
Yeah, it works!! Thanks mate! :D