ყოველთვიური არქივი: მაისი 2011

ჯერ jQuery–ზომის შეცვლა გამოსახულების მაგალითი

მე მემკვიდრეობით ვებ ნაწილი კლიენტების წლის გამყიდველი და მას აქვს სურათის ზომის პრობლემა.  ფოტოებს თან უნდა 60×50 მაგრამ გარკვეული უცნაური მიზეზი, ორიგინალური გამყიდველი აიძულა მათ 42×42, ასე რომ ისინი squashed:

 

კარგი გამოსახულება

ცუდი გამოსახულება

აი markup (გარკვეულწილად გამარტივდა):

<მაგიდა კლასის = 'გახანგრძლივებული მსოფლმხედველობის ">
  <thead>
    <tr>
      <ე  ტელეკომპანია '100′>3 სამშაბათი</ე>
    </tr>
  </thead>

  <tbody>
    <tr კლასის = 'პროგნოზს ">
      <td width = '100′>
        <ul>
          <li class = 'მაღალი'>მაღალი: 72&deg;F</li>
          <li class = "დაბალი">დაბალი: 44&deg;F</li>
          <li class = "მდგომარეობაშია">მზიანი
            <img src =’
http://deskwx.weatherbug.com/images/Forecast/icons/localized/60×50/en/trans/cond007.png’ ტელეკომპანია '42’ სიმაღლე = '42’ alt =” />
          </li>
        </ul>
      </td>
    </tr>

  </tbody>

</მაგიდა>

თქვენ აღვნიშნო, რომ მიუხედავად იმისა, გზა იმიჯი თავად გვიჩვენებს შესაბამისი განზომილების (60×50) ორიგინალური გამყიდველი აიძულა იგი 42×42.  რატომ?  Crazy.

ყოველ შემთხვევაში, მინდოდა ეს სწრაფია და ადვილი გამოსავალი ამ საკითხს და მე აღმოჩნდა jQuery.  შეასრულა იყო იქნებიან ყველა შესაბამისი <img> tags.  მე არ მინდა, რომ Muck შესახებ ნებისმიერ სხვა img tags (რომელიც არსებობს მრავალი).  ეს ცოტა jQuery გააკეთა შეასრულა:

<script type="text/javascript" src ="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></დამწერლობის>

<script type="text/javascript">
     $(დოკუმენტი).მზად(ფუნქცია () {

         $(‘li.condition > img ').ყოველ(ფუნქცია (ინდექსი, პუნქტის)
           
{
             $(პუნქტის).css("width", "60"); 
             $(პუნქტის).css("height", "50");
            });
     }); // on დოკუმენტი დატვირთვა
</დამწერლობის>

ცოტა კოდი პოულობს კრებული <li> tags რომლის კლასი არის "მდგომარეობაში" და <img> ბავშვები.  ეს მაშინ iterates მეშვეობით ყველა რომ.  მუშაობდა როგორც ხიბლი.

მე შეიძლება ალბათ გამარტივებაში ეს, მაგრამ მე არასდროს ყოფილა ასეთი UNIX ბიჭი რომ გადაწყდეს π to 18 ციფრები სიზუსტით გამოყენებით SED და awk და მე არ ვარ ასეთი სახის თუ jQuery ბიჭი ან Smile.

</ბოლო>

გამოწერა ჩემი დღიური.

გამომყვეს Twitter-ზე http://www.twitter.com/pagalvin

დამუშავების XML ერთად LINQ

აქ არის სწრაფი მაგალითად გამოყენებით LINQ გარჩევის ზოგიერთი  XML და მიიღოთ sweet, sweet ატრიბუტები მასში.

აი XML მინდა გარჩევის:

<?xml version="1.0" encoding="utf-8" ?>
<DeafultConfigurationSets>
  <PageLayouts>

    <PageLayout name="xyzzy">
      <Tabs>
        <Tab TabOrder="1" TabLabel="x" SharePointContentType="a" AdditionalConstraints="ac1"/>
        <Tab TabOrder="2" TabLabel="y" SharePointContentType="b" AdditionalConstraints="ac2"/>
      </Tabs>
    </PageLayout>

    <PageLayout name="xyzzy2">
      <Tabs>
        <Tab TabOrder="100" TabLabel="x" SharePointContentType="a" AdditionalConstraints="ac1"/>
        <Tab TabOrder="101" TabLabel="y" SharePointContentType="b" AdditionalConstraints="ac2"/>
        <Tab TabOrder="103" TabLabel="z" SharePointContentType="c" AdditionalConstraints="ac3"/>
      </Tabs>
    </PageLayout>

  </PageLayouts>
</DeafultConfigurationSets>

მინდა შექმნა გარკვეული ჩანართების at runtime მიერ პარსინგის ზემოთ.  ჩემი ჩანართები დამოკიდებული გვერდზე განლაგებას.  თუ ჩემს გვერდზე განლაგება სახელზე არის "xyzzy2" მაშინ მე მინდა ჩანართების 100, 101 და 103 (ჩანართების <PageLayout სახელი = "xyzzy2">).

აი LINQ რომ აკეთებს:

var allTabs =
              ეხლა P ში
                  XElement.Parse(theXmlToParse).
                 
ელემენტები("PageLayouts").
                  ელემენტები("PageLayout")
              სადაც (p.Attribute("name").Value.Equals("xyzzy2"))
              ეხლა მ p.Elements("Tabs").ელემენტები("Tab")
              შერჩევა მ;

          Results.Text = string.Empty;

          foreach (var aTab in allTabs)
          {
              Results.Text =
                  "Tab Order: " + aTab.Attribute("TabOrder").ფასი + " |" +
                  "Tab Label: " + aTab.Attribute("TabLabel").ფასი + " | " +
                  "SharePointContentType: " + aTab.Attribute("SharePointContentType").ფასი + " | " +
                  "AdditionalConstraints: " + aTab.Attribute("AdditionalConstraints").ფასი + "\r";
          }

აღნიშნულ, ცვლადი "theXmlToParse" არის სიმებიანი ცვლადი, მაგრამ თქვენ შეგიძლიათ გამოიყენოთ დატვირთვა() მეთოდის ნაკადი თუ გნებავთ.

"შედეგები" არის ლეიბლთან ვებგვერდი ფორმა და როდესაც ეს კოდი გაუშვებს, როგორც ჩანს, ამ:

SNAGHTML11cd2e7c

მე არ მუშაობდა, თუ როგორ დასალაგებლად შედეგები ჯერ კიდევ, ასე რომ დავტოვებთ, რომ მომავალში დღიურში.

</ბოლო>

გამოწერა ჩემი დღიური.

გამომყვეს Twitter-ზე http://www.twitter.com/pagalvin