javascript

java

python

c#

node.js

reactjs

android

php

c++

ruby-on-rails

html

jquery

git

css

ios

sql

.net

c

<img src="//i.stack.imgur.com/bk9VA.png" alt="" class="sponsor-tag-img" width="18" height="16"/>android

string

java - 将org.w3c.dom.Document打印到stdout的最短路径是什么?

什么是打印(a.k.a。格式化)org.w3c.dom.Document到stdout的最简单方法?

trans by 2019-08-19T16:36:04Z

javascript - 获取子节点索引

在直接的javascript(即没有诸如jQuery之类的扩展等)中,有没有办法在其父节点内确定子节点的索引而不迭代并比较所有子节点?

例如。,

var child = document.getElementById('my_element');
var parent = child.parentNode;
var childNodes = parent.childNodes;
var count = childNodes.length;
var child_index;
for (var i = 0; i < count; ++i) {
  if (child === childNodes[i]) {
    child_index = i;
    break;
  }
}

有没有更好的方法来确定孩子的指数?

trans by 2019-08-19T02:17:53Z

javascript - 在DOM中嵌入任意JSON的最佳实践?

我正在考虑在DOM中嵌入任意JSON,如下所示:

<script type="application/json" id="stuff">
    {
        "unicorns": "awesome",
        "abc": [1, 2, 3]
    }
</script>

这类似于可以在DOM中存储任意HTML模板以供以后与JavaScript模板引擎一起使用的方式。 在这种情况下,我们以后可以检索JSON并使用以下方法解析它:

var stuff = JSON.parse(document.getElementById('stuff').innerHTML);

这有效,但这是最好的方法吗? 这是否违反任何最佳做法或标准?

注意:我没有寻找在DOM中存储JSON的替代方案,我已经确定这是我遇到的特定问题的最佳解决方案。 我只是在寻找最好的方法。

trans by 2019-08-19T00:25:02Z

html - 使用JavaScript获取下一个/上一个元素?

如何使用JavaScript获取HTML中的下一个元素?

假设我有三个<div>s,我在JavaScript代码中得到一个引用,我想得到的是下一个<div>,哪个是前一个。

trans by 2019-08-13T23:06:13Z

javascript - 检查HTML元素是否包含滚动条

检查元素是否有滚动条的最快方法是什么?

当然有一件事是检查元素是否大于其视口,这可以通过检查这两个值来轻松完成:

el.scrollHeight > el.offsetHeight || el.scrollWidth > el.offsetWidth

但这并不意味着它也有滚动条(所以它实际上可以被人类滚动)。

如何检查1个跨浏览器中的滚动条和仅2个javascript(如无jQuery)方式?

仅限Javascript,因为我需要尽可能小的开销,因为我想编写一个非常快速的jQuery选择器过滤器

// check for specific scrollbars
$(":scrollable(x/y/both)")

// check for ANY scrollbar
$(":scrollable")

我想我必须检查:scrollable样式设置,但我该如何以跨浏览器的方式执行此操作?

额外编辑

不仅:scrollable样式设置。 检查元素是否具有滚动条并不像看起来那么简单。 当元素没有边框时,上面写的第一个公式可以正常工作,但是当它没有时(特别是当边框宽度相当大时),.scrollintoview()尺寸可以大于scroll尺寸,但元素仍然可以 可滚动。 我们实际上必须从offset维度中减去边框以获取元素的实际可滚动视口,并将其与scroll维度进行比较。

备查

:scrollable jQuery选择器过滤器包含在我的.scrollintoview() jQuery插件中。 如果有人需要,可以在我的博客文章中找到完整的代码。 即使它没有提供实际解决方案,Soumya的代码也大大帮助我解决了这个问题。 它指出了我正确的方向。

trans by 2019-08-12T23:53:11Z

dom - 如何在纯JavaScript中切换元素的类?

我正在寻找一种方法将这个jQuery代码(在响应式菜单部分中使用)转换为纯JavaScript。

如果难以实现,可以使用其他JavaScript框架。

$('.btn-navbar').click(function()
{
    $('.container-fluid:first').toggleClass('menu-hidden');
    $('#menu').toggleClass('hidden-phone');

    if (typeof masonryGallery != 'undefined') 
        masonryGallery();
});
trans by 2019-08-12T04:21:18Z

javascript - SVG获取文本元素宽度

我正在为一个SVG文件处理一些ECMAScript / JavaScript,需要获得widthheight这样的text元素,这样我就可以调整围绕它的矩形。 在HTML中,我可以在元素上使用widthtext属性,但看起来这些属性不可用。

这是我需要处理的片段。 每当我更改文本时,我都需要更改矩形的宽度,但我不知道如何获得text元素的实际width(以像素为单位)。

<rect x="100" y="100" width="100" height="100" />
<text>Some Text</text>

有任何想法吗?

trans by 2019-08-10T19:44:39Z

java - XML文档到字符串

获取XML文档的字符串表示形式(org.w3c.dom.Document)的最简单方法是什么? 这就是所有节点都在一条线上。

举个例子,来自

<root>
  <a>trge</a>
  <b>156</b>
</root>

(这只是一个树形表示,在我的代码中它是一个org.w3c.dom.Document对象,所以我不能把它当作字符串对待)

"<root> <a>trge</a> <b>156</b> </root>"

谢谢!

trans by 2019-08-09T11:41:32Z

javascript - 执行用.innerHTML插入的<script>元素

我有一个脚本,使用<script>将一些内容插入到元素中。

例如,内容可以是:

<script type="text/javascript">alert('test');</script>
<strong>test</strong>

问题是<script>标记内的代码没有被执行。我用Google搜索了一下,但没有明显的解决方案。 如果我使用jQuery $(element).append(content);插入内容,脚本部分在注入DOM之前得到eval'd。

有没有人有一段执行所有<script>元素的代码? jQuery代码有点复杂,所以我无法弄清楚它是如何完成的。

编辑:

通过窥视jQuery代码,我已经设法弄清楚jQuery是如何做到的,这导致了以下代码:

Demo:
<div id="element"></div>

<script type="text/javascript">
  function insertAndExecute(id, text)
  {
    domelement = document.getElementById(id);
    domelement.innerHTML = text;
    var scripts = [];

    ret = domelement.childNodes;
    for ( var i = 0; ret[i]; i++ ) {
      if ( scripts && nodeName( ret[i], "script" ) && (!ret[i].type || ret[i].type.toLowerCase() === "text/javascript") ) {
            scripts.push( ret[i].parentNode ? ret[i].parentNode.removeChild( ret[i] ) : ret[i] );
        }
    }

    for(script in scripts)
    {
      evalScript(scripts[script]);
    }
  }
  function nodeName( elem, name ) {
    return elem.nodeName && elem.nodeName.toUpperCase() === name.toUpperCase();
  }
  function evalScript( elem ) {
    data = ( elem.text || elem.textContent || elem.innerHTML || "" );

    var head = document.getElementsByTagName("head")[0] || document.documentElement,
    script = document.createElement("script");
    script.type = "text/javascript";
    script.appendChild( document.createTextNode( data ) );
    head.insertBefore( script, head.firstChild );
    head.removeChild( script );

    if ( elem.parentNode ) {
        elem.parentNode.removeChild( elem );
    }
  }

  insertAndExecute("element", "<scri"+"pt type='text/javascript'>document.write('This text should appear as well.')</scr"+"ipt><strong>this text should also be inserted.</strong>");
</script>
trans by 2019-08-07T19:03:53Z

dom - 使用Python使用minidom获取元素值

我正在为Python中的Eve Online API创建一个GUI前端。

我已成功从其服务器中提取XML数据。

我试图从名为“name”的节点中获取值:

from xml.dom.minidom import parse
dom = parse("C:\\eve.xml")
name = dom.getElementsByTagName('name')
print name

这似乎找到了节点,但输出如下:

[<DOM Element: name at 0x11e6d28>]

我怎么能让它打印节点的值?

trans by 2019-08-06T00:25:46Z

javascript - innerHTML是异步的吗?

我希望我不会自欺欺人,但我想了解这两行代码中发生了什么:

document.body.innerHTML = 'something';
alert('something else');

我观察到的是在HTML更新之前警报显示(或者它可能有但是页面没有刷新/重新绘制/无论如何)

检查这个codepen看看我的意思。

请注意,即使将alert放入setTimeout(..., 0)也无济于事。 看起来innerHTML实际更新页面需要更多的事件循环。

编辑:

我忘了提到我使用Chrome并没有检查其他浏览器。 看起来它只在Chrome中可见。 尽管如此,我仍然感兴趣为什么会发生这种情况。

trans by 2019-08-05T19:58:39Z

JQuery检查DOM中的重复ID

我正在用ASP.NET MVC编写应用程序。 与传统的ASP.NET相比,您更负责在生成的页面中创建所有ID。 ASP.NET会给你讨厌但独特的ID。

我想添加一个快速的小jQuery脚本来检查我的文档是否有重复的ID。 它们可能是DIVS,图像,复选框,按钮等的ID。

<div id="pnlMain"> My main panel </div>
<div id="pnlMain"> Oops we accidentally used the same ID </div> 

我正在寻找一套设置和忘记类型的实用程序,当我做一些不小心的事情时,它会警告我。

是的我只在测试期间使用它,并且也欢迎替代品(例如firebug插件)。

trans by 2019-08-05T13:23:25Z

javascript - 如何使用CSS隐藏<select>菜单中的<option>?

我已经意识到,Chrome似乎不允许我在display: none;中隐藏<option>.Firefox会。

我需要隐藏符合搜索条件的<option>。 在Chrome网络工具中,我可以看到我们的JavaScript正确设置为display: none;,但是一旦点击了<select>菜单,就会显示它们。

如何点击菜单时显示符合我的搜索条件的<option>? 谢谢!

trans by 2019-08-02T04:34:37Z

dom - 加载图像的jQuery事件

是否可以通过jQuery事件检测何时加载所有图像?

理想情况下,应该有一个

$(document).idle(function()
{
}

要么

$(document).contentLoaded(function()
{
}

但我找不到这样的事情。

我想过附上这样的事件:

$(document).ready(function()
{
    var imageTotal = $('img').length;
    var imageCount = 0;        
    $('img').load(function(){if(++imageCount == imageTotal) doStuff();});
}

但如果图像无法加载,这会破坏吗? 在正确的时间调用该方法至关重要。

trans by 2019-07-31T21:48:16Z

dom - 使用Jquery查找父div的id

我有一些像这样的HTML:

<div id="1">
    <p>
        Volume = <input type="text" />
        <button rel="3.93e-6" class="1" type="button">Check answer</button>
    </p>
    <div></div>
</div>

和一些JS这样:

$("button").click(function () {
    var buttonNo = $(this).attr('class');
    var correct = Number($(this).attr('rel'));

    validate (Number($("#"+buttonNo+" input").val()),correct);
    $("#"+buttonNo+" div").html(feedback);
});

我真正喜欢的是如果我没有按钮上的class =“1”(我知道数字类无效,但这是一个WIP!),所以我可以确定buttonNo基于 父div的id。 在现实生活中,有多个部分看起来像这样。

  1. 如何找到按钮的div的id。

  2. 在按钮代码中存储答案的更加语义的方法是什么。 我希望尽可能让这个非程序员能够复制和粘贴而不会破坏东西!

trans by 2019-07-28T13:58:33Z

jquery - 如何使用javascript创建链接?

我有一个标题字符串和一个链接字符串。 我不知道如何将两者结合在一起使用Javascript在页面上创建链接。 任何帮助表示赞赏。

编辑1:为问题添加更多细节。我试图解决这个问题的原因是因为我有一个RSS提要并且有一个标题和URL列表。 我想将标题链接到URL以使页面有用。

编辑2:我正在使用jQuery,但它是全新的,并不知道它可以帮助在这种情况下。

trans by 2019-07-28T02:19:18Z

javascript - window.location.href,window.location.replace和window.location.assign之间的区别

有什么区别

  1. window.location.assign()
  2. window.location.assign()
  3. window.location.assign()

我在很多论坛上看到window.location.assign()只是替换了当前的会话历史记录,因此浏览器的后退按钮将无法正常工作。 但是,我无法重现这一点。

function fnSetVariable() {
    //window.location.href = "http://example.com";
    window.location.replace("http://example.com");
    //window.location.assign("http://example.com");
}

<a onmouseover="fnSetVariable();" 
   href="PageCachingByParam.aspx?id=12" >
   CLICK 
</a>
trans by 2019-07-27T18:08:09Z

javascript - 如何计算DOM元素中的文本行? 我可以吗?

我想知道是否有办法计算div中的行数。 假设我们有这样的div:

<div id="content">hello how are you?</div>

根据许多因素,div可以有一行,两行,甚至四行文本。 脚本有什么方法可以知道吗?

换句话说,DOM中是否有自动中断?

trans by 2019-07-27T06:44:58Z

dom - 在jQuery中通过索引获取元素

我有一个无序列表和该列表中li标记的索引。 我必须使用该索引获取li元素并更改其背景颜色。 这可能不循环整个列表吗? 我的意思是,有没有什么方法可以实现这个功能?

这是我的代码,我相信它会起作用......

<script type="text/javascript">
  var index = 3;
</script>

<ul>
    <li>India</li>
    <li>Indonesia</li>
    <li>China</li>
    <li>United States</li>
    <li>United Kingdom</li>
</ul>

<script type="text/javascript">
  // I want to change bgColor of selected li element
  $('ul li')[index].css({'background-color':'#343434'});

  // Or, I have seen a function in jQuery doc, which gives nothing to me
  $('ul li').get(index).css({'background-color':'#343434'});
</script>
trans by 2019-07-26T20:50:11Z

html - 使用Javascript更改CSS值

使用javascript设置内联CSS值很容易。 如果我想改变宽度,我有这样的HTML:

<div style="width: 10px"></div>

我需要做的就是:

document.getElementById('id').style.width = value;

它将更改内联样式表值。 通常这不是问题,因为内联样式会覆盖样式表。 例:

<style>
   #tId {
      width: 50%;
   }
</style>

<div id="tId"></div>

使用此Javascript:

document.getElementById('tId').style.width = "30%";

我得到以下内容:

<style>
   #tId {
      width: 50%;
   }
</style>

<div id="tId" style="width: 30%";></div>

这是一个问题,因为我不仅不想更改内联值,如果我在设置之前查找宽度,当我有:

<div id="tId"></div>

返回的值是Null,所以如果我有Javascript需要知道某些逻辑的宽度(我将宽度增加1%,而不是特定值),当我期望字符串“50%”时返回Null “真的没用。

所以我的问题是:我的CSS样式中的值不是内联的,我如何获得这些值? 在给定id的情况下,如何修改样式而不是内联值?

trans by 2019-07-26T18:29:30Z

1 2 3 4 5 6 7 8 下一页 共8页