Вопрос

В SharePoint 2007 с использованием типов контента и редактирования newform.aspx с помощью jQuery мне удалось настроить внешний вид нового элемента, добавив градиент цветовой идентификатор для каждого типа контента. Я тоже хочу продолжить этот взгляд в взглядах. Для представления «Все элементы» я добавил веб -часть редактора контента, в которую я кодировал стили и сценарий jQuery. Я хотел бы иметь возможность отображать градиентные цвета в виде, и у меня есть это в Firefox, но IE8 кажется сопротивлением.

В веб -частью редактора контента у меня есть код, который работает в передней части, но не в IE8. Похоже, что проблема заключается в том, что IE8 не обрабатывает заявление jQuery: $ Text.parent ();.

Вопрос: Кто -нибудь знает способ добавления класса к родителю без использования obj.parent ()? Или есть обходной путь IE для этой проблемы?

Кстати, это заявление jQuery работает в IE8: $ Text.parent (). Css («фоновый цвет», «#ff0000»);, однако, это без градиентных качеств.

Заранее спасибо,

-Арнольд

Код:

<style type="text/css">
.formRedBackground
{
    background: white;
    background: -moz-linear-gradient(top, white, #FF0000);
    background: -webkit-gradient(linear, left top, left bottom, from(white), to  (#FF0000));
    filter:progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000')
    filter: progid:DXImageTransform.Microsoft.Gradient(StartColorStr='white', EndColorStr='#FF0000', gradientType='0');
    color:#FFFFFF;
}

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/jquery-ui.js"></script>

<script type="text/javascript">
$(document).ready(function(){
$Text = $("td .ms-vb2:contains('Red')");
var myelement = $Text.parent();
myelement.addClass('formRedBackground');

});

Это было полезно?

Решение

Я нашел ответ на свой вопрос. Я изменил jQuery, чтобы выполнить функцию на родителе TD. Я также в итоге изменил свое требование, так что только первые два элемента TD в TR раскрашены.

Вот код, если он поможет кому -то еще:

<script type="text/javascript">
$(document).ready(function(){

$Text = $("td .ms-vb2:contains('Beige')");
$Text.parent().each(function() { $("td:lt(2)", this).addClass("formBeigeBackground");});

$Text = $("td .ms-vb2:contains('Black')");
$Text.parent().each(function() { $("td:lt(2)", this).addClass("formBlackBackground");});

$Text = $("td .ms-vb2:contains('Lavender')");
$Text.parent().each(function() { $("td:lt(2)", this).addClass("formLavenderBackground");});

$Text = $("td .ms-vb2:contains('Pink')");
$Text.parent().each(function() { $("td:lt(2)", this).addClass("formPinkBackground");});

$Text = $("td .ms-vb2:contains('Red')");
$Text.parent().each(function() { $("td:lt(2)", this).addClass("formRedBackground");});

});
</script>

Это великолепный сайт,

-Арнольд

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top