【问题标题】:Javascript - Click list element to load HTML page animationJavascript - 单击列表元素以加载 HTML 页面动画
【发布时间】:2015-09-29 17:06:47
【问题描述】:

这里是Javascript新手。我正在处理此处提供的一段代码 - http://codepen.io/mariusbalaj/pen/beALH/

我正在尝试修改行为,以便在单击时不仅放大列表元素,还应该在动画框架内加载不同的 html 页面。

$(document).ready(function() {
    var $box = $('.box');

    $('.metro li').each(function() {
        var color = $(this).css('backgroundColor');
        var content = $(this).html();
        $(this).click(function() {
            $box.css('backgroundColor', color);
            $box.addClass('open');
            $box.find('p').html(content);
        });

        $('.close').click(function() {
            $box.removeClass('open');
            $box.css('backgroundColor', 'transparent');
        });
    });
});

谁能指出我正确的方向?

更新 1: 我发现修改下一行的“内容”变量会改变动画帧的内容:

       ` $box.find('p').html(content);`

如果我将其更改为:

       ` $box.find('p').html('<h1>Test Page</h1>');`

它按预期工作。但是,我希望每个列表元素的内容都不同。 有没有一种简单的方法可以为每个元素执行此操作?我对“this”关键字感到很困惑。

【问题讨论】:

  • 您可以使用 ajax 加载您的内容。
  • 您的意思是要在动画之后加载不同的页面吗?
  • 对不起,应该说得更清楚。我希望在动画框架内加载新页面。

标签: javascript jquery html css list


【解决方案1】:

如果您想打开另一个 HTML 页面,您可能正在寻找这个答案:

how to change page from within javascript

如果您尝试在动画框架内打开它,您应该考虑对新页面/图块的内容提出一些请求并用内容填充它,这里回答:How to get the response of XMLHttpRequest?

这一切都取决于你想做什么,让我们知道:)

【讨论】:

  • 感谢您的快速回复。我试图在动画框架内打开它。我对此很陌生,不理解使用的一些术语,但我很想学习。我会查看您发布的第二个链接,如果有帮助,我会发布一些更新。 :)
猜你喜欢
  • 1970-01-01
  • 2011-04-10
  • 1970-01-01
  • 2018-09-13
  • 2022-11-11
  • 2014-02-20
  • 2019-06-29
  • 2019-07-03
  • 1970-01-01
相关资源
最近更新 更多