小编Jon*_*ter的帖子

循环遍历div的所有后代 - 仅限JS

我一直在使用jQuery来做到这一点:

$element.find("*").each(function() {
    var $this = $(this);

    $this.removeAttr("style width align");

    if ($this.is("embed")) {
        $element.append("<div class='video'></div>");
        $this.attr("width", 640).attr("height", 360).parent().appendTo("#" + element + " .video");
    };
});
Run Code Online (Sandbox Code Playgroud)

但我一直在读,.each()与简单的for循环(jsPerf)相比,jQuery的方法相当慢.我的问题是如何用纯JS模仿这个?找到a中的所有元素div,然后遍历节点.

我试图搜索这个,但我似乎找到的只是jQuery答案 - 无处不在.

我尝试了其他的东西,但这与我选择所有后代一样接近:

var children = document.getElementById('id').getElementsByTagName('*');

for( var i = 0; i<children.lengtth; i++){
    children[i].removeAttribute("style");
    console.log(children[i]);
}
Run Code Online (Sandbox Code Playgroud)

javascript optimization

18
推荐指数
2
解决办法
3万
查看次数

隐藏元素或动态创建?

哪个选项最好:

  • 在标记中有一个元素,用CSS隐藏.如果启用了JS,则显示该元素.

  • 如果启用了JS,则标记中没有元素并动态创建它.

如果用户没有JS,我不希望显示div.我的问题不是如何编写不同的案例,这是最好的和为什么.

编辑:当我说"最好"时,我的意思是支持你的回答,为什么它对你最好.可以是速度/语义/等.我想要的是能够更好地了解每一个的利弊.速度也不是问题,因为它只是一个元素,所以它就像毫秒.

对于第一个选项,它可能更快,但我们有不必要的标记和CSS规则.因为如果没有JS,那么根本就没有内容,更不用说隐藏它了.

现在是第二个选项,即使它可能不那么快,我将不同的部分分开,只是真正加载必须加载的部分.

html javascript css

7
推荐指数
1
解决办法
187
查看次数

如何重新初始化flexslider以进行动态加载

我遇到了flexslider的问题,我需要从web服务下载base64中的图片.下载完成后,我.append()来添加我的幻灯片......

但有时,一切都完美添加,但滑块没有正确重新加载所以我得到这样的代码: 屏幕截图1

而不是像这样的代码: 画面2

在这种情况下,如何重新启动滑块?

javascript jquery slider flexslider

7
推荐指数
2
解决办法
3万
查看次数

我们可以检测是否安装了根CA证书?

这可能使用JavaScript或PHP吗?我希望能够检测到我的私人CA是否安装在用户的iOS或Android设备上.从那里我可以决定是否提供安装说明.我一直是"googlin",并没有找到任何有用的东西.有人曾尝试过这个吗?我想知道我应该花时间学习什么.如果不可能,您能否建议使用浏览器替代方案?

编辑:我在这里没有选择,这不是我的决定.出于其他安全原因,将使用私有CA证书.

javascript php cryptography certificate

4
推荐指数
1
解决办法
3178
查看次数

图像每年每天都在变化(365天)

我需要一点帮助我的代码有366个图像需要更改,名为001.jpg,002.jpg ... 366.jpg.它获取日期并为其绘制图片.代码有效,但我无法在img标签中输出.

<html>
<head>
<script type="text/javascript">

var firstJan = Math.floor((new Date().setFullYear(new Date().getFullYear(),0,1))/86400000);
var today = Math.ceil((new Date().getTime())/86400000);
var dayOfYear = today-firstJan;

var bgdImage;
if((dayOfYear+'').length == 1)
bgdImage = '00'+dayOfYear+'.jpg';
else if((dayOfYear+'').length == 2)
bgdImage = '0'+dayOfYear+'.jpg';
else
bgdImage = dayOfYear+'.jpg';

document.getElementById('bla').src = "bgdImage";
</script>

</head>
<body onload=img()>

<img id="bla" width="100%" height="100%" />

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript

3
推荐指数
1
解决办法
1719
查看次数

选择几个元素 jQuery

我对 jQuery 很陌生,所以如果这听起来很愚蠢,请不要跳过我。我想知道是否有一种方法可以选择其中的“#ammountbest2”、“input”和“textarea”,以便我可以使用一个选择器一次性隐藏和清除里面的所有值,这样我就不会必须拼出每一个。像兄弟姐妹或父母之类的东西。有了这个,我可以在最后附加:“.val('').css('display', none')”

$('#ammountbest').change(function () {
var ammountbest = ""

$('#ammountbest option:selected').each(function () {
    ammountbest += $(this).text() + "";});


if(ammountbest == "0") {$('#ammountbest1,#ammountbest2').css('display', 'none');}   
if(ammountbest == "1") {
    $('#ammountbest1').css('display', 'block');
    $('#ammountbest2 input,#ammountbest2 textarea').val('');
    $('#ammountbest2').css('display', 'none');
    }
if(ammountbest == "2") {
    $('#ammountbest1,#ammountbest2').css('display', 'block');
    }
})
.trigger('change');



<select id="ammountbest">
    <option>0</option>
    <option>1</option>
    <option>2</option>
</select>

<!-- 1 Winners -->
<div id="ammountbest1" style="display:none;">
<label for="besttitle1" title="Title">Title 01:</label><br>
<input name="besttitle1" id="besttitle1" size="30" type="input">
<label for="bestschool1" title="School">School 01:</label><br>
<input name="bestschool1" id="bestschool1" size="30" type="input">
<label for="bestvideo1" title="Video">Video …
Run Code Online (Sandbox Code Playgroud)

html css forms jquery jquery-selectors

2
推荐指数
1
解决办法
2757
查看次数

$(document).ready的不同用法

使用$(docu ...)与你在里面定义的变量和函数有什么区别/优点,从使用函数然后在$(docu ...)中调用它

$(document).ready(function (){
    initialize();
});
function initialize(){
    hello
}
Run Code Online (Sandbox Code Playgroud)

过度使用这个:

$(document).ready(function (){
        hello
});
Run Code Online (Sandbox Code Playgroud)

javascript jquery

-1
推荐指数
1
解决办法
488
查看次数