如何在没有#id或.class?</script>的情况下将CSS样式添加到<script>

时间:2011-02-25 19:31:18

标签: jquery css

我在展示一些广告时遇到一些问题,因为其中一些是由JS生成的,有些是简单的<a>

我如何识别内部任何内容,例如#my_adds框列表<div>

如果没有,Jquery中的任何简单解决方案都可以在<p>后选择第一个<script>

我想拦截的情况:

<td colspan="2" valign="top">                                <h5>ThePhoneHouse</h5>
<script type="text/javascript">// <![CDATA[
var uri = 'http://impes.tradedoubler.com/imp?type(img)g(18440980)a(1871028)' + new String (Math.random()).substring (2, 11);
document.write('<a href="http://clk.tradedoubler.com/click?p=75510&a=1871028&g=18440980" mce_href="http://clk.tradedoubler.com/click?p=75510&amp;a=1871028&amp;g=18440980" target="_BLANK"><img src="'+uri+'" mce_src="'+uri+'" border=0 vspace="25"></a>');
// ]]></script><a href="http://clk.tradedoubler.com/click?p=75510&amp;a=1871028&amp;g=18440980" mce_href="http://clk.tradedoubler.com/click?p=75510&amp;a=1871028&amp;g=18440980" target="_BLANK"><img src="http://impes.tradedoubler.com/imp?type%28img%29g%2818440980%29a%281871028%29142438581" mce_src="http://impes.tradedoubler.com/imp?type(img)g(18440980)a(1871028)142438581" border="0" vspace="25"></a>
<p>Telefonía, Cámaras Digitales, Televisores, toda la electrónica en PhoneHouse</p>
<p>PARA CANJEAR TU BONO: Aplicación automática, solo por registrarte en el boletín de ofertas, llévate 10€ de descuento para tus compras*</p>
<p><a href="#"></a></p>
<hr size="1"> </td>

不同案例:

<td colspan="2" valign="top">                                <h5>La Redoute</h5>
<p><a href="http://ad.zanox.com/ppc/?17274717C1346468123T" target="_blank"><img src="http://ad.zanox.com/ppv/?17274717C1346468123" alt="Aprovecha nuestra completa y exclusiva oferta de canastilla.5 piezas y una bolsa cambiador de regalo.¡Descúbrela!" align="bottom" border="0" width="468" height="60" hspace="1"></a></p>
<p>Descubre la nueva colección Bebe y Mama. Aprovecha esta exclusiva oferta de canastilla. 5 piezas y una bolsa cambiador de regalo</p>
<p>PARA CANJEAR TU BONO: Tan solo con entrar desde aquí, conseguirás esta estupenda oferta*</p>
<hr size="1"> </td>

基本上如果有<script>,则第一个<p>没有相同的高度边距/填充(仍然不知道)

有什么想法吗?谢谢!

2 个答案:

答案 0 :(得分:3)

您可以通过以下方式为所有<p>代码添加相同的样式:

$("p").css(...);

您可以通过以下方式向第一个<p>标记添加样式:

$("p:first").css(...);

(有关详情,请参阅:first selector)。

通常,jQuery selectors页面可帮助您识别的不仅仅是#id.class

答案 1 :(得分:2)

尝试在你的html中找到一些你可以识别的元素,然后找出相对于这个元素的子元素......

示例:

<html>
   <body>
     <div id='content'>
       <div> some advetisement </div>
     </div>
   </body>
</html>

此样式为id =“content”-div:

#content {
 font-weight: bold;
 }

并设置其下方所有其他div的样式:

#content div {
 border: 1px solid red
}

如果这还不够,你必须使用javascript来修改你的DOM并直接在元素中添加样式。