2012-02-29 11 views
0

在Javascript中我可以用下面的命令來訪問該頁面的樣式表信息腳本# - 如何訪問文檔的樣式表信息?

例子:document.styleSheets.length

然而,在腳本#我無法進行相同的調用(或similiar),即有Document下沒有樣式表屬性。

問:如何訪問Script Sharp中的文檔樣式表信息?

在此先感謝

  • 羅裏

回答

0

你的意思是你沒有看到樣式表拿出在智能感知列表中鍵入後,「文檔」。 ?這並不意味着你無法使用它,因爲Script#只是用來發送JavaScript。

除非您想要將它添加到腳本#自己(在gitHub上),否則您可能需要使用Script.Literal添加該腳本。

+0

謝謝Jamasuss,正確的,StyleSheets沒有出現在intellisense上。除了使用Script.Literal之外,還有其他的選擇。 – Rory 2012-03-01 09:18:34

1

我會避免使用Script.Literal。你最終會得到一堆不可維護的代碼。您最可能使用Script#的要點是要有強大的輸入,並使代碼易於重構和維護。在Script.Literal中添加魔術字符違反了我們的原則,以便讓代碼易於維護。如果在腳本#內部庫中不支持某些內容,那麼正如其他人所建議的那樣,您可以推送到github。你也可以選擇擴展現有的課程或自己創建課程。

在你的情況下,只需創建一對新的Script#類。關鍵是使用導入的屬性。

[Imported]//keeps us from defining a javascript class in our emitted js library. 
[ScriptName("document")] 
public static class Html5Document 
{ 

    public static StyleSheet[] StyleSheets//becomes styleSheets when emitted. 
    { 
     get 
     { 
      return null; 
     } 
     set 
     { 
     } 
    } 
} 

[Imported] 
public static class StyleSheet 
{ 

    //Add whatever property and methods you will need. 
} 

現在,在你的腳本#代碼,你可以寫:

Html5Document.StyleSheets.Length();//c# 

你發出的JavaScript代碼會。

document.styleSheets.length;//javascript