Архивы по месяцам: Мая 2011

Еще больше jQuery–Изменение размера изображения пример

Я унаследовал веб-часть от старого поставщика клиента и он имеет проблему размер изображений.  Изображения должны быть 60×50 но для некоторых странно причине, первоначальный поставщик заставили их в 42×42, Таким образом они выглядят сжато:

 

Хорошее изображение

Плохое изображение

Вот разметка (несколько упрощена):

<Таблица класса = «продлен outlook»>
  <thead>
    <TR>
      <th  Ширина ='100′>3 Вторник</th>
    </TR>
  </thead>

  <tbody>
    <TR класса = «прогноз»>
      <ТД width = "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.  Почему?  Crazy.

В любом случае, Я хотел быстрого и простого решения этой проблемы, и я повернулся к jQuery.  Хитрость заключается в том, чтобы найти все соответствующие <IMG> Теги.  Я не хочу, чтобы сбросить карты с других тегов img (из которых есть много).  Этот бит jQuery сделал трюк:

<сценарий type = "текст/javascript" src ="HTTP://AJAX.googleapis.com/AJAX/libs/jQuery/1.5/jQuery.min.js"></сценарий>

<сценарий type = «текст/javascript»>
     $(документ).готов(функция () {

         $(' li.condition > IMG').Каждый(функция (индекс, пункт)
           
{
             $(пункт).CSS(«Ширина», «60»); 
             $(пункт).CSS(«Высота», «50»);
            });
     }); // при загрузке документа
</сценарий>

Что немного кода находит коллекции <ли> Теги, чей класс является «условие» и <IMG> дети.  Затем выполняется итерация всего этого.  Работал как Шарм.

Я мог бы вероятно рационализировать, но я никогда не был вида парень unix, решена π Кому 18 точность цифр с помощью sed и awk и я не такого рода, если jQuery парень, либо Улыбка.

</конец>

Подписаться на мой блог.

Следуй за мной по щебетать на 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;

          Results.text = строка.Пустой;

          по каждому элементу (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