2014-02-20 29 views
0

我用了一些來源透明覆蓋在JavaScript:添加文本在javascript疊加

function grayOut(vis, options) 
{ 
    var options = options || {}; 
    var zindex = 50; 
    var opacity = 70; 
    var opaque = (opacity/100); 
    var bgcolor = options.bgcolor || '#000000'; 
    var dark=document.getElementById('darkenScreenObject'); 

    if (!dark) { 
    // The dark layer doesn't exist, it's never been created. So we'll 
    // create it here and apply some basic styles. 
    // If you are getting errors in IE see: http://support.microsoft.com/default.aspx/kb/927917 
    var tbody = document.getElementsByTagName("body")[0]; 
    var tnode = document.createElement('div');   // Create the layer. 
     tnode.style.position='absolute';     // Position absolutely 
     tnode.style.top='0px';       // In the top 
     tnode.style.left='0px';       // Left corner of the page 
     tnode.style.display='none';      // Start out Hidden 
     tnode.id='darkenScreenObject';     // Name it so we can find it later 

     tbody.appendChild(tnode); 

     /* 
var pTag = document.createElement("P"); 
     var txtProcessing = document.createTextNode("Processing GIF..."); 
     tnode.appendChild(txtProcessing); 
*/ 
    } 

    if (vis) 
    { 
    // Calculate the page width and height 
    if(document.body && (document.body.scrollWidth || document.body.scrollHeight)) 
    { 
     var pageWidth = document.body.scrollWidth+'px'; 
     var pageHeight = document.body.scrollHeight+'px'; 
    } 
    else if(document.body.offsetWidth) 
    { 
     var pageWidth = document.body.offsetWidth+'px'; 
     var pageHeight = document.body.offsetHeight+'px'; 
    } 
    else 
    { 
     var pageWidth='100%'; 
     var pageHeight='100%'; 
    } 
    //set the shader to cover the entire page and make it visible. 

    dark.style.opacity=opaque;      
    dark.style.MozOpacity=opaque;     
    dark.style.filter='alpha(opacity='+opacity+')'; 
    dark.style.zIndex=zindex;   
    dark.style.backgroundColor=bgcolor; 
    dark.style.width= pageWidth; 
    dark.style.height= pageHeight; 
    dark.style.display='block'; 

    var txt = document.createTextNode("This text was added."); 
    dark.appendChild(txt); 
    } 
    else 
    { 
    dark.style.display='none'; 
    } 
} 

我的問題是,我試圖讓一些文本顯示在透明層上,但我可以不能讓它工作。有什麼想法嗎?

+0

Lof代碼。嘗試減少和隔離你的問題,你會得到更多的答案。 – Alvaro

回答

1

您的文本節點是在疊加層上創建的,但是是文本顏色不可見的原因。

檢查Fiddle其中文字顏色設置爲紅色。

dark.style.color = 'red'; 
+0

gwah非常感謝你! – Lagoo87