Question

Dans SharePoint 2007 en utilisant des types de contenu et Editting NewForm.aspx avec jQuery j'ai réussi à personnaliser l'apparence d'un nouvel élément, l'ajout d'une identité de dégradé de couleur pour chaque type de contenu. Je veux continuer ce regard dans les points de vue, aussi. Pour le « Tous les objets » vue, j'ai ajouté une partie Web Content Editor dans lequel je codé les styles et les scripts jQuery. Je voudrais être en mesure d'afficher des dégradés de couleurs dans la vue et j'ai accompli que dans FireFox, mais IE8 semble resistent.

Dans le Web Content Editor Partie I ont un code qui fonctionne en ForeFox mais pas dans IE8. La question semble être que IE8 ne gère pas la déclaration jQuery: $ Text.parent (); .

Question: Est-ce que quelqu'un sait d'un moyen d'ajouter une classe à un parent sans utiliser obj.Parent ()? Ou est-il une solution de contournement pour IE ce problème?

BTW, cette déclaration de jQuery fonctionne dans IE8. $ Text.parent () BAE ( "background-color", "# FF0000"); , cependant, plus il est sans gradient qualités.

Merci à l'avance,

-Arnold

Code:

<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');

});

Était-ce utile?

La solution

J'ai trouvé la réponse à ma question. J'ai modifié le jQuery pour exécuter une fonction sur la mère du TD. J'ai aussi fini par changer mon exigence de sorte que seulement les deux premiers éléments de TD dans un TR sont colorisés.

Voici le code dans le cas où il aide quelqu'un d'autre:

<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>

Ceci est un grand site,

-Arnold

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top