10

丽来帮忙?由于我的 jQuery.noob 状态而提前道歉,但我正在画一个空白并且关于为什么这不起作用的想法。也许这里有人可以看到我看不到的东西?我肯定会很感激任何帮助。

问题

这个网页上有几个我想添加类的图像(还有段落等)。他们目前没有关于他们的课程。

为什么我要添加一个类

我想使用 CSS3 来定位该类并设置任何具有它的样式。更具体地说,这将是一个弹出菜单,我想调整它的不透明度并为其进入和退出设置动画。

我如何尝试这样做

<script type="text/javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript">
    $("document").ready(function() {
        $("img").addClass("menumain");
                   alert("Here I am!"); //This alert will go when I figure this out, I just added it to see if it pops up (it does).
    });
</script>

我也试过这种方式(注意:我所有的图像在文件名中都包含字符串“menumain-”

<script type="text/javascript" src="../jquery-1.7.2.min.js"></script>
<script type="text/javascript">
    $("document").ready(function() {
        $("img[src*=menumain-]").attr({class:"menumain"});

    });
</script>

那么当我尝试它时会发生什么?

没有什么。我加载页面,(该警报确实弹出,我将其关闭)然后使用 firebug 和/或 Safari 开发人员工具等展开正文,并深入到页面上的图像。我看到了图像属性,但我没有看到类是在哪里添加的,更不用说定义为“menumain”,这是我想要的类。

为什么这让我发疯的部分原因

我在同一页面上有另一个 jQuery 脚本,它做类似的事情。它向围绕整个页面的主 Div 添加属性,而不是 Class 属性,而是其他属性。我对那个 jQuery 函数没有任何问题,所以我不明白为什么这个函数不起作用。

为什么它可能不起作用

从周日开始,我已经检查了 9 次语法,但我没有发现任何问题。不过,您知道校对语法的作用。

其次,我要定位的图像(我还将尝试在同一类中标记菜单中的文本和按钮)如下所示隐藏在 Divs 中:

<div id="image194" style="visibility: inherit;">
     <a name="image194anc">
          <img width="317" height="564" border="0" alt="menumain-bg-317x564"    src="images/menumain-bg-317x564.png" name="image194Img">
     </a>
</div>

我假设我的目标$("img[src =menumain-]")* 会找到这些图像,无论它们是否在 Divs 中,但也许我错了?

还有一件事

这个“网页”是由 Trivantis 的名为 Lectora 的应用程序生成的。这是一个所见即所得的创作工具,适用于创建在线培训的教学设计师(不是网络开发人员)。所以这并不是说我是在 DreamWeaver 中创建这整个东西,或者可以改变整个网页设计方法。但是我应该能够在一组页面元素上弹出一个类并使用 CSS 定位它们,不是吗?

如果您发现任何问题,请告诉我。这是页面的一个版本--> http://bit.ly/Rijnl8

4

5 回答 5

5

jQuery 有一个用于添加类的内置方法。

<script type="text/javascript" src="../jquery-1.7.2.min.js"></script>
<script type="text/javascript">
    $(document).ready(function() {
        $("img[src*=menumain-]").addClass("menumain");

    });
</script>

http://api.jquery.com/addClass

于 2012-08-03T18:15:24.223 回答
1

您可以将想要样式的图像放入容器 div 中,然后执行

$('.container').addClass('yourClass');

然后在课堂上,使用

.yourClass img {}

为这些容器中的所有图像设置样式。这是一种解决方法,但它应该可以解决您的问题!此外,在 HTML5 中,不再需要使用 inside 标签type="text/javascript"<script>

于 2012-08-03T18:30:17.197 回答
0

只需在我构建的应用程序中执行此操作。你在做正确的事,但你做得还不够。使用 .attr 函数时添加一个值:

$('.category').attr('theAttributeHere','theAttributeValueHere');
于 2012-08-03T18:13:01.743 回答
0

这似乎是你想要的http://jsfiddle.net/dstarh/Kxfg7/1/

为页面上的每个图像添加一个类

于 2012-08-03T18:17:22.633 回答
0

在 Lectora 11 中,您可以向任何对象添加类。选择对象 > 属性选项卡 > 外观部分 > 单击角落中的小箭头。

于 2013-03-16T12:05:51.210 回答