Javascript 更改元素内的内容?

Javascript 更改元素内的内容?,javascript,dom,Javascript,Dom,我试图在同一容器中使用多部电影,并在单击不同按钮时播放。 一个是我的登录页,一个是关于我们的…等等 我正在尝试使用JavaScript编写一个函数来相互依赖地调用电影。我想按下导航按钮的,然后不同的东西弹出。我认为我应该使用JavaScript,但我是一个**漏洞,所以我想我会问你一些好人。我正在研究DOM,但实际上没有使用它的实践。我制作了一个图像地图,它是一个(swf。),我想在人们点击我们时加载它,一个用于登录页的快速电影,也是一个我正在处理的文件,在登录页电影运行后或有人点击主页时运行并

我试图在同一容器中使用多部电影,并在单击不同按钮时播放。

一个是我的登录页,一个是关于我们的…等等

我正在尝试使用JavaScript编写一个函数来相互依赖地调用电影。我想按下导航按钮的,然后不同的东西弹出。我认为我应该使用JavaScript,但我是一个**漏洞,所以我想我会问你一些好人。我正在研究DOM,但实际上没有使用它的实践。我制作了一个图像地图,它是一个(swf。),我想在人们点击我们时加载它,一个用于登录页的快速电影,也是一个我正在处理的文件,在登录页电影运行后或有人点击主页时运行并循环。正如我所说的,当有人点击导航按钮时,我希望它们都出现在同一个容器中

我知道,就是这样…我被卡住了,我已经困惑了好几天,阅读不同的博客,w3schools,StackOverflow,QuirksMode…仍然不知道如何恰当地处理它

我想我应该先创建一个单独的JavaScript文件Duh

好的,我应该更具体一点。
对象去哪里了?在HTML还是JAVASCRIPT中?
我如何引用它们?OnClick,getElementById()…两者都是???

我理解基本原理,所以我有信心,如果你给我一个提示,我可以正确地编写代码,所以请不要把编程从我身上抹掉


我所知道的是它们都必须是相同的大小,如何喷枪和屏幕打印……但这并没有帮助,如何去学校读书。

这是我写的一个非常简单的例子。单击链接时,它将更改id为“panel”的div中的文本

<html>
    <head>
        <script type="text/javascript">
            function changeContent()
            {
                var element = document.getElementById('panel');
                element.innerHTML = 'hello';
            }
        </script>
    </head>
    <body>
        <a href="#" onclick="changeContent()">Click me</a>
        <div id="panel">after the click this will show hello</div>
    </body>
</html>

函数changeContent()
{
var元素=document.getElementById('panel');
element.innerHTML='hello';
}
单击后,将显示hello

关键是
元素。innerHTML
。在本例中,我只是添加了一个文本,但您当然可以添加所需的任何HTML,例如SWF文件的嵌入代码。

可能是一本适合您的好书。一个很好的参考是(注:截止日期为3月!)

以下是它应该如何为您工作:

a) 你把所有的资源都放进一个HTML文件——swf、图片、电影等等。将所有可交换的东西放在一个大的
元素中自己的
元素中。现在看来事情会一团糟,但不要惊慌。对于要在页面加载时显示“first”的元素,将其设置为

。。。这会将您的所有资源放入HTML文件中

b) 假设您所有的按钮都是img的,那么您将为按钮2、按钮3等添加

b) 使用以下规则将样式表附加到HTML:

  div.centrestage div { display: none; }
  div.centrestage div.onstage { display: block; }
。。。这将隐藏您目前不希望显示的资源

c) 将JavaScript附加到HTML中,可执行以下操作:

  window.onLoad = function(e) {

     var centrestage = document.getElementById('centrestage');
     var r1 = document.getElementById('resource1');
     var r2 = document.getElementById('resource2');

     var currentResource = r1;

     var b1 = document.getElementById('button1');
     button1.onClick = function(e) {
         currentResource.className = '';
         r1.className = 'onstage';
         currentResource = r1;
     }

     var b2 = document.getElementById('button2');
     button1.onClick = function(e) {
         currentResource.className = '';
         r2.className = 'onstage';
         currentResource = r2;
     }

  }
。。。请注意,此脚本尚未执行任何操作。。。它只是将一些函数附加到一些onClick事件,这些事件是您根据名称从DOM树中获取的对象。这些函数基本上为
DIV
打开/关闭“onstage”类属性,样式表完成其余的工作


正如你可能得到的要点。。。一旦浏览器读取了HTML,内存中就有了DOM对象模型。一旦此模型完成加载,浏览器将查找在onLoad事件中注册的所有脚本,并执行它们。这种做法有助于将所有结构(HTML/DOM)从外观(CSS)和行为(挂起DOM事件的JavaScript)中分离出来。

感谢您抽出时间来帮助我。罗伯,我现在要说一遍,我只是想让你知道我谢谢你,所以那些“视频”的格式不一样吗?一个SWF,然后是一个MOV文件?不,但我可以进去把它们都改成相同的格式…使用flash制作图像地图是很合适的,因为我花了很多时间在flash上创建它。我可以进入后期效果,把quicktime电影改成其他的东西???我可以问一下目的吗???我不确定我给自己出了什么错误……当你在别人的评论上发表评论时,用
@
通知那个人,否则他看不到你写的东西。例如@DanMan现在会通知他这条评论。不,但我可以进去把它们全部改成相同的格式…这将是使用flash制作图像地图的好时机,因为我花了很多时间在flash中创建它。我可以进入后期效果,把quicktime电影改成其他的东西???我可以问一下目的吗???我不确定我给自己带来了什么错误…@DanManTHANK非常感谢你…就像任何新的东西一样,代码一开始是不熟悉的,但我读得越多,它就变得越容易理解。也感谢您提供的资源@大卫·布劳克