2010-07-11 68 views
1

我想呼應了一些JavaScript來呼應,但我不能得到正確的格式由我把的JavaScript開始我想出去到一個字符串格式化的JavaScript由PHP

$javascript = 'onmouseover="this.style.backgroundColor='blue'" onmouseout="this.style.backgroundColor='white'"'; 

然後回聲它這樣

$hint="<span $javascript>".$artistname->item(0)->childNodes->item(0)->nodeValue."</span>"; 

任何幫助,將不勝感激

回答

4

使用event attributes被認爲是不好的做法。 JavaScript should be unobtrusive。另外,我不明白爲什麼您必須將屬性存儲在PHP變量中,而不是直接將它們添加到span標記中。最後但並非最不重要的是,爲什麼不用CSS :hover selector來改變鼠標超過範圍時的背景顏色?這將是一個乾淨的方法。

1

正如你可以從報價代碼着色告訴,你需要逃避你的單引號。您將以:

$javascript = 'onmouseover="this.style.backgroundColor=\'blue\'" onmouseout="this.style.backgroundColor=\'white\'"'; 
1

您應該從輸出字符串開始。你希望它看起來是這樣的:

onmouseover="this.style.backgroundColor='blue'" 
onmouseout="this.style.backgroundColor='white'" 

現在,爲了把這個字符串在PHP到一個變量,你必須用單引號或雙引號括起來。由於您的字符串包含單引號和雙引號,因此它們中的任何一個都需要「轉義」。

使用單引號:

$javascript = 'onmouseover="this.style.backgroundColor=\'blue\'" 
       onmouseout="this.style.backgroundColor=\'white\'"'; 

使用雙引號:

$javascript = "onmouseover=\"this.style.backgroundColor='blue'\" 
       onmouseout=\"this.style.backgroundColor='white'\""; 

編輯

最後一點:仔細什麼戈登已經發布讀取。