मासिक अभिलेख: मई 2011

अभी तक अधिक jQuery–एक उदाहरण के छवि का आकार परिवर्तन

मैं एक ग्राहक की पुरानी विक्रेता से एक वेब पार्ट विरासत में मिला और यह एक छवि का आकार समस्या है।  छवियाँ 60 होना चाहिए×50 लेकिन कुछ अजीब कारण के लिए, मूल विक्रेता उन्हें 42 में मजबूर×42, इसलिए वे squashed देखो:

 

अच्छी छवि

छवि खराब

यहाँ मार्कअप है (कुछ हद तक सरलीकृत):

<टेबल क्लास 'विस्तारित-आउटलुक' =>
  <thead>
    <टी. आर.>
      <गु  चौड़ाई ='100′>3 मंगलवार</गु>
    </टी. आर.>
  </thead>

  <tbody>
    <tr कक्षा = 'भविष्यवाणी'>
      <टीडी चौड़ाई ='100′>
        <उल>
          <ली क्लास 'उच्च' =>उच्च: 72&डिग्री;च</li>
          <ली क्लास = 'कम'>कम: 44&डिग्री;च</li>
          <ली क्लास 'हालत' =>सनी
            <img src =’
http://deskwx.weatherbug.com/images/Forecast/icons/localized/60×50/en/trans/cond007.png’ चौड़ाई ='42’ ऊंचाई ' 42 =’ alt =” />
          </li>
        </उल>
      </td>
    </टी. आर.>

  </tbody>

</तालिका>

आप कि भले ही ध्यान दें हूँ खुद की छवि पथ उचित आयाम से पता चलता है (60×50) मूल विक्रेता यह 42 में मजबूर×42.  क्यों?  दीवाना.

वैसे भी, मैं इस मुद्दे के लिए एक त्वरित और आसान समाधान चाहते थे और मैं करने के लिए jQuery में बदल गया।  उपयुक्त के सभी का पता लगाने के लिए चाल थी <आइएमजी> टैग।  मैं किसी भी अन्य img टैग के साथ के बारे में गंदगी करना चाहता था (जिनमें से वहाँ हैं कई).  JQuery के इस बिट चाल थी:

<स्क्रिप्ट प्रकार = पाठ/जावास्क्रिप्ट"" src ="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></स्क्रिप्ट>

<स्क्रिप्ट प्रकार = "पाठ/जावास्क्रिप्ट">
     $(दस्तावेज़).तैयार(समारोह () {

         $(' li.condition > आइएमजी ').प्रत्येक(समारोह (सूचकांक, आइटम)
           
{
             $(आइटम).सीएसएस("चौड़ाई", "60"); 
             $(आइटम).सीएसएस("ऊँचाई", "50");
            });
     }); // दस्तावेज़ लोड पर
</स्क्रिप्ट>

संग्रह कोड की है कि कुछ पाता है <li> टैग जिसका वर्ग "हालत" है और <आइएमजी> बच्चों को।  यह तब कि सभी के माध्यम से iterates.  एक आकर्षण की तरह काम किया.

मैं शायद यह कारगर बनाने सकता है, लेकिन मैं कभी नहीं था एक unix आदमी है कि π का हल की तरह करने के लिए 18 अंक परिशुद्धता sed और awk का उपयोग और यदि या तो jQuery आदमी मैं उस तरह नहीं हूँ मुस्कुराओ.

</अंत>

मेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin

LINQ के साथ XML पार्सिंग

यहाँ कुछ को पार्स करने के लिए LINQ का उपयोग कर के एक त्वरित उदाहरण है  XML और मिठाई पर पाने के लिए, उसमें मीठे गुण.

यहाँ XML पार्स करने के लिए मैं चाहता है:

<?xml संस्करण "1.0 =" एन्कोडिंग = "utf-8" ?>
<DeafultConfigurationSets>
  <PageLayouts>

    <PageLayout नाम "xyzzy" =>
      <टैब्स>
        <टैब TabOrder = "1" TabLabel = "एक्स" SharePointContentType = "एक" AdditionalConstraints = "ac1" />
        <टैब TabOrder = "2" TabLabel = "y" SharePointContentType = "b" AdditionalConstraints = "ac2" />
      </टैब्स>
    </PageLayout>

    <PageLayout का नाम "xyzzy2" =>
      <टैब्स>
        <टैब TabOrder "100 =" TabLabel = "एक्स" SharePointContentType = "एक" AdditionalConstraints = "ac1" />
        <टैब TabOrder "101 =" TabLabel = "y" SharePointContentType = "b" AdditionalConstraints = "ac2" />
        <टैब TabOrder "103 =" TabLabel = "z" SharePointContentType = "सी" 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 में से एम("टैब").तत्वों("टैब")
              मी का चयन करें;

          Results.Text = स्ट्रिंग।खाली;

          foreach (var aTab allTabs में)
          {
              Results.Text =
                  "टैब क्रम: " + aTab.Attribute("TabOrder").मान + " |" +
                  "टैब लेबल: " + aTab.Attribute("TabLabel").मान + " | " +
                  "SharePointContentType: " + aTab.Attribute("SharePointContentType").मान + " | " +
                  "AdditionalConstraints: " + aTab.Attribute("AdditionalConstraints").मान + "r";
          }

इसके बाद के संस्करण में, एक स्ट्रिंग चर चर "theXmlToParse" है, लेकिन आप लोड का उपयोग कर सकते हैं() अगर आप की तरह एक स्ट्रीम पर विधि.

"परिणाम" कोई लेबल पर एक वेब प्रपत्र और जब इस कोड निष्पादित करता है, यह इस तरह दिखता है:

SNAGHTML11cd2e7c

मैं अभी तक परिणाम को सॉर्ट करने के लिए कैसे बाहर काम नहीं किया है, तो मैं उस के लिए एक भविष्य ब्लॉग पोस्ट छोड़ दूँगा.

</अंत>

मेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin