每月檔案: 5 月 2011

然而更多的 jQuery–調整大小圖像示例

我從用戶端的舊供應商那裡繼承了一個 web 部件,它有一個圖像的大小問題。  圖片應該是 60 歲×50 但由於一些奇怪的原因, 原始供應商將他們被迫 42×42, 因此,他們看擠壓:

 

良好的形象

壞形象

這裡是標記 (某種程度上簡化):

<表類 =' 擴展 outlook'>
  <thead>
    <tr>
      <th  寬度 = 100′>3 星期二</th>
    </tr>
  </thead>

  <tbody>
    <tr 類 = '預測'>
      <td 寬度 = 100′>
        <ul>
          <李班 = '高'>高: 72&二甘醇;F</李>
          <李班 = '低'>低: 44&二甘醇;F</李>
          <李班 = '狀況'>陽光燦爛
            <img src =’
http://deskwx.weatherbug.com/images/Forecast/icons/localized/60×50/en/trans/cond007.png’ 寬度 = 42年’ 高度 = 42年’ 按住 alt =” />
          </李>
        </ul>
      </運輸署>
    </tr>

  </tbody>

</表>

您會注意到儘管 圖像本身的路徑 顯示正確的尺寸 (60×50) 原始供應商迫使它在 42×42.  為什麼?  瘋狂.

不管怎麼說, 我想要快速而輕鬆地解決這個問題,我轉向了 jQuery。  訣竅是要找到相應的所有 <img> 標記。  我不想與任何其他 img 標籤弄髒 (其中有很多).  這位的 jQuery 沒有訣竅:

<腳本類型 ="文本 javascript" src ="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></腳本>

<腳本類型 ="文本/javascript">
     $(文檔).準備好了(功能 () {

         $(' li.condition > img').每個(功能 (索引, 專案)
           
{
             $(專案).css("寬", ""60); 
             $(專案).css("高度", ""50);
            });
     }); // 在文檔載入
</腳本>

這段代碼查找集合 <李> 誰的班是"條件"的標籤, <img> 孩子們。  它然後遍歷所有這一切。  立竿見影.

我大概可以簡化它, 但我永遠不會是那種解決 π 的 unix 傢伙 自 18 數位精度使用 sed 和 awk 和我不是那種,如果 jQuery 傢伙要麼 微笑.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin

解析 XML 使用 LINQ

下面是一個簡單的例子,使用 LINQ 解析部分  XML 和甜才能得到, 甜其內屬性.

這裡是我想要解析的 XML:

<?xml 版本 ="1.0" 編碼 ="utf-8" ?>
<DeafultConfigurationSets>
  <PageLayouts>

    <PageLayout 名稱 ="xyzzy">
      <選項卡>
        <選項卡 TabOrder ="1" TabLabel ="x" SharePointContentType ="" AdditionalConstraints ="ac1"/>
        <選項卡 TabOrder ="2" TabLabel ="y" SharePointContentType ="b" AdditionalConstraints ="ac2"/>
      </選項卡>
    </PageLayout>

    <PageLayout 名稱 ="xyzzy2">
      <選項卡>
        <選項卡 TabOrder ="100" TabLabel ="x" SharePointContentType ="" AdditionalConstraints ="ac1"/>
        <選項卡 TabOrder ="101" TabLabel ="y" SharePointContentType ="b" AdditionalConstraints ="ac2"/>
        <選項卡 TabOrder ="103" TabLabel ="z" SharePointContentType ="c" AdditionalConstraints ="ac3"/>
      </選項卡>
    </PageLayout>

  </PageLayouts>
</DeafultConfigurationSets>

我想通過以上的分析建立在運行時的某些選項卡。  我的選項卡取決於頁面的佈局。  如果我的頁面配置的名稱是"xyzzy2",然後我想要的選項卡 100, 101 和 103 (中的選項卡 <PageLayout 名稱 ="xyzzy2">).

這裡是 LINQ 並不管用:

var allTabs =
              從 p 中
                  XElement.Parse(theXmlToParse).
                 
元素(""PageLayouts).
                  元素(""PageLayout)
              在哪裡 (p.Attribute("名稱").Value.Equals(""xyzzy2))
              從 p.Elements m("選項卡").元素("選項卡")
              選擇 m;

          Results.Text = 字串。空;

          foreach (在 allTabs 中的 var aTab)
          {
              Results.Text =
                  "Tab 鍵順序: " + aTab.Attribute(""TabOrder).價值 + " |" +
                  "選項卡標籤: " + aTab.Attribute(""TabLabel).價值 + " | " +
                  "SharePointContentType: " + aTab.Attribute(""SharePointContentType).價值 + " | " +
                  "AdditionalConstraints: " + aTab.Attribute(""AdditionalConstraints).價值 + ""r;
          }

在上面, "theXmlToParse"變數是字串變數, 但您可以使用負載() 如果你喜歡一個流上的方法.

"結果"是一個 web 表單上,當這段代碼執行時的標籤, 它看起來像這樣:

SNAGHTML11cd2e7c

我沒找出如何尚未對結果進行排序, 所以我會把這個未來的博客.

</結束>

訂閱我的博客.

跟我在 Twitter 上 http://www.twitter.com/pagalvin