2013-09-27 38 views
2

排序的新然而,隨着網絡的東西的工作,很抱歉,如果這是一個愚蠢的問題,我似乎無法理解爲什麼我使用的javascript代碼褪色的文字我的引號出入我的瀏覽器崩潰,代碼如下。使用Javascript/jQuery代碼崩潰我的瀏覽器

<!DOCTYPE html> 
<html> 
<head><style type="text/css">h1 { font-size: 60px; 
    font-family: 'PT Sans Caption', sans-serif; 
color: #F5F5F5; 
text-shadow: 0px 0px 6px rgba(255,255,255,0.7); 
text-align: center; 
} 
html { 
    background: url(http://www.mediafire.com/convkey/9176/gipuztaktb22sw36g.jpg) no-repeat center center fixed; 
    -webkit-background-size: cover; 
    -moz-background-size: cover; 
    -o-background-size: cover; 
    background-size: cover; 
} 

subline { 
display: run-in; 
width:80%; 
height:5px; 
background-color:#F5F5F5; 
box-shadow: 0px 0px 6px rgba(255,255,255,0.7); 
position: relative; 
left: 10%; 
} 

p { 
color: #F5F5F5; 
font-size: 20px; 
font-family: 'Open Sans Condensed', sans-serif; 
text-align: center; 
} 
</style> 


<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script> 
<link href="http://fonts.googleapis.com/css?family=PT+Sans+Caption" rel="stylesheet" type="text/css"> 
    <link href="http://fonts.googleapis.com/css?family=Open+Sans+Condensed:300" rel="stylesheet" type="text/css"> 
<title>HD188753</title> 
<style type="text/css"></style></head> 
<body style=""> 
    <h1>HD188753 
    <subline></subline> 
    </h1> 
    <p id="Quote" style="display: none; "> 
    "Metaphysical 
    <b> quote </b> 
    here" 
    </p> 


<script> 
function pausecomp(ms) { 
ms += new Date().getTime(); 
while (new Date() < ms){} 
} 

x = 0; 
while (x < 1) 
{ 
$("p").fadeOut(400); 
pausecomp(2000); 
$("p").fadeIn(400); 
pausecomp(2000); 
} 


</script></body> 

無論如何,感謝您的任何建議或幫助。

回答

1

while循環保持JavaScript引擎運行在100%(因爲無限循環)。你需要看看complete參數fadeIn/fadeOut,你需要了解JavaScript的setTimeout方法。

基本上,complete函數運行動畫完成後。所述setTimeout是不言自明的:它運行指定的功能指定的時間量已過去之後。這裏有一個例子:

function fadeOut() { 
    $("p").fadeOut(400, function() { 
     setTimeout(fadeIn, 2000); 
    }); 
} 

function fadeIn() { 
    $("p").fadeIn(400, function() { 
     setTimeout(fadeOut, 2000); 
    }); 
} 

fadeOut(); 
1
x = 0; 
while (x < 1) 
{ 
$("p").fadeOut(400); 
pausecomp(2000); 
$("p").fadeIn(400); 
pausecomp(2000); 
} 

你是一個無限循環。 x的值沒有被環路內的任何地方操控,讓試圖執行的時間,這會殺死瀏覽器窗口中的淡入淡出和無限多。

1

我不知道你所說的「崩潰」的意思,但有一個無限循環在你的代碼

x = 0; 
while (x < 1) { ... } 

這可能是爲什麼你的代碼永遠不會完成。

+0

我以爲循環意味着它會在循環內進行淡入淡出,這是我想要的無限時間,那是錯的嗎? – user2821600

+0

是的,這是錯的。 JavaScript一次只做一件事,這樣代碼就可以將所有時間都放入和退出,從而使頁面上沒有其他任何東西可以運行。 – Brian