标签: getelementbyid

带有id的DOM树元素是否成为全局变量?

研究一个简单的HTMLElement包装器的想法我偶然发现了Internet Explorer和Chrome的以下内容:

对于DOM树中具有ID的给定HTMLElement,可以使用其ID作为变量名来检索div.所以对于一个喜欢的div

<div id="example">some text</div>
Run Code Online (Sandbox Code Playgroud)

Internet Explorer 8和Chrome中,您可以执行以下操作:

alert(example.innerHTML); //=> 'some text'
Run Code Online (Sandbox Code Playgroud)

要么

alert(window['example'].innerHTML); //=> 'some text'
Run Code Online (Sandbox Code Playgroud)

那么,这是否意味着DOM树中的每个元素都转换为全局命名空间中的变量?它是否也意味着可以使用它作为getElementById这些浏览器中方法的替代品?

javascript dom global-variables identifier getelementbyid

341
推荐指数
5
解决办法
4万
查看次数

获取元素的父div

这应该很简单,但我遇到了麻烦.如何获取子元素的父div?

我的HTML:

<div id="test">
    <p id="myParagraph">Testing</p>
</div>
Run Code Online (Sandbox Code Playgroud)

我的JavaScript:

var pDoc = document.getElementById("myParagraph");
var parentDiv = ??????????   
Run Code Online (Sandbox Code Playgroud)

我会想document.parentparent.container会工作,但我一直在not defined犯错误.请注意,它pDoc是定义的,而不是它的某些变量.

有任何想法吗?

PS我希望尽可能避免使用jQuery.

html javascript getelementbyid

191
推荐指数
3
解决办法
26万
查看次数

如何在React中访问DOM元素?React中document.getElementById()的等价是什么

如何在react.js中选择某些条形图?

这是我的代码:

var Progressbar = React.createClass({
    getInitialState: function () {
        return { completed: this.props.completed };
    },
    addPrecent: function (value) {
        this.props.completed += value;
        this.setState({ completed: this.props.completed });
    },

    render: function () {

        var completed = this.props.completed;
        if (completed < 0) { completed = 0 };


        return (...);
    }
Run Code Online (Sandbox Code Playgroud)

我想使用这个React组件:

var App = React.createClass({
    getInitialState: function () {

        return { baction: 'Progress1' };
    },
    handleChange: function (e) {
        var value = e.target.value;
        console.log(value);
        this.setState({ baction: value });
    },
    handleClick10: function (e) …
Run Code Online (Sandbox Code Playgroud)

javascript getelementbyid reactjs

147
推荐指数
5
解决办法
26万
查看次数

在iFrame jQuery中选择一个元素

在我们的应用程序中,我们解析一个网页并将其加载到iFrame中的另一个页面中.加载页面中的所有元素都有其tokenid-s.我需要通过那些tokenid-s选择元素.意思是 - 我点击主页面上的一个元素,然后在iFrame的页面中选择相应的元素.在jQuery的帮助下,我按以下方式进行:

function selectElement(token) {
     $('[tokenid=' + token + ']').addClass('border'); 
}
Run Code Online (Sandbox Code Playgroud)

但是使用此功能,我只能选择当前页面中的元素,而不能选择iFrame中的元素.有谁能告诉我如何在加载的iFrame中选择元素?

谢谢.

javascript iframe getelementbyid

115
推荐指数
3
解决办法
19万
查看次数

按类和ID获取元素内部元素 - JavaScript

好吧,之前我曾经涉猎过JavaScript,但我写的最有用的东西是CSS样式切换器.所以我对此有些新意.假设我有这样的HTML代码:

<div id="foo">
    <div class="bar">
        Hello world!
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我怎么改变"Hello world!" 到"再见世界!" ?我知道document.getElementByClass和document.getElementById如何工作,但我想更具体.对不起,如果之前有人询问过.

javascript getelementbyid getelementsbyclassname

114
推荐指数
5
解决办法
30万
查看次数

如何使用JavaScript getElementByClass而不是GetElementById?

我正在尝试根据每个DIV的类别切换网站上某些DIV元素的可见性.我正在使用基本的JavaScript代码段来切换它们.问题是该脚本仅使用getElementById,因为getElementByClassJavaScript不支持.不幸的是,我必须使用class而不是id来命名DIV,因为DIV名称是由我的XSLT样式表使用某些类别名称动态生成的.

我知道某些浏览器现在支持getElementByClass,但由于Internet Explorer不支持,我不想走那条路.

我发现脚本使用函数来按类获取元素(例如本页#8:http://www.dustindiaz.com/top-ten-javascript/),但我无法弄清楚如何集成它们与我的切换脚本.

这是HTML代码.DIV本身缺失,因为它们是在使用XML/XSLT加载页面时生成的.

主要问题:如何获取以下Toggle脚本以获取逐个元素而不是按ID获取元素?

<html>

<head>

<!--This is the TOGGLE script-->
<script type="text/javascript">
<!--
    function toggle_visibility(id) {
       var e = document.getElementById(id);
       if(e.style.display == 'block')
          e.style.display = 'none';
       else
          e.style.display = 'block';
    }
//-->
</script>

</head>

<!--the XML/XSLT page contents will be loaded here, with DIVs named by Class separating dozens of li's-->

<a href="#" onclick="toggle_visibility('class1');">Click here to toggle visibility of class 1 objects</a>

<a href="#" onclick="toggle_visibility('class2');">Click here to …
Run Code Online (Sandbox Code Playgroud)

javascript class getelementbyid toggle getelementsbyclassname

88
推荐指数
3
解决办法
39万
查看次数

无法读取null的属性'addEventListener'

我必须为项目使用vanilla JavaScript.我有一些功能,其中一个是打开菜单的按钮.它适用于目标ID存在的页面,但会导致id不存在的页面出错.在那些函数找不到id的页面上,我收到一个"无法读取属性'addEventListener'的null"错误,我的其他函数都没有工作.

下面是打开菜单的按钮的代码.

function swapper() {
toggleClass(document.getElementById('overlay'), 'open');
}

var el = document.getElementById('overlayBtn');
el.addEventListener('click', swapper, false);

var text = document.getElementById('overlayBtn');
text.onclick = function(){
this.innerHTML = (this.innerHTML === "Menu") ? "Close" : "Menu";
return false;
};
Run Code Online (Sandbox Code Playgroud)

我该如何处理?我可能需要将所有代码包装在另一个函数中或使用if/else语句,以便它只搜索特定页面上的id,但不确定.

javascript function getelementbyid addeventlistener

80
推荐指数
13
解决办法
38万
查看次数

Javascript在元素后附加Child

我想在一个ul元素中使用javascript追加一个li元素,这是我到目前为止的代码..

var parentGuest = document.getElementById("one");
var childGuest = document.createElement("li");
childGuest.id = "two";
Run Code Online (Sandbox Code Playgroud)

我熟悉appendChild,

parentGuest.appendChild(childGuest);
Run Code Online (Sandbox Code Playgroud)

但是,这会将新元素添加到另一个元素中,而不是在其后.如何在现有元素之后附加新元素?谢谢.

<ul>
  <li id="one"><!-- where the new li is being put --></li>
  <!-- where I want the new li -->
</ul>
Run Code Online (Sandbox Code Playgroud)

javascript getelementbyid appendchild createelement

65
推荐指数
4
解决办法
10万
查看次数

如何使用document.getElementById在iframe中选择元素

iframe喜欢这个

<iframe name="myframe1" id="myframe1" width="100%" height="100%" src="a.html">
<html>
    <head></head>
    <frameset name="myframe2" cols="0%, 100%" border="0" frameBorder="0" frameSpacing="0">
        <frame name="page1" src="c.html" scrolling="no"></frame>
        <frame name="page2" src="d.html" >
            <html>
                <head></head>
                <body id="top">
                    <div id="div1">
                        <div id="div2">
                            <div id="div3">
                                <ul id="x">
                                    <li>a</li>
                                    <li>b</li>
                                </ul>
                            </div>
                        </div>
                    </div>
                </body>
            </html>

        </frame>

    </frameset>
</html>
</iframe>
Run Code Online (Sandbox Code Playgroud)

我想引用元素"x".我尝试了几种方法,但我找不到解决方案.

html javascript iframe frameset getelementbyid

61
推荐指数
3
解决办法
14万
查看次数

基于部分字符串的Javascript getElementById

我需要获取元素的ID,但值是动态的,只有它的开头始终是相同的.

下面是一段代码.

<form class="form-poll" id="poll-1225962377536" action="/cs/Satellite">
Run Code Online (Sandbox Code Playgroud)

ID始终以'poll-'开头,然后数字是动态的.

如何使用JavaScript而不是jQuery获取ID?

javascript getelementbyid

56
推荐指数
3
解决办法
8万
查看次数