小编Moh*_*mad的帖子

jQuery.after()无法按预期工作

请看看:http://jsfiddle.net/s6VdW/

HTML:

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

JS:

var span1 = $("<span/>").text("Hello");
var br = $("<br/>");
var span2 = $("<span/>").text("World!");
span1.after(br).after(span2);

$("#test").append(span1);
Run Code Online (Sandbox Code Playgroud)

预期结果是:

Hello
World
Run Code Online (Sandbox Code Playgroud)

HTML的预期结果是:

<div>
    <span>Hello</span>
    <br/>
    <span>World</span>
</div>
Run Code Online (Sandbox Code Playgroud)

错误是什么?根据jQuery Docs(http://api.jquery.com/after/),它应该是可能的:

.after() 也适用于断开连接的DOM节点.

即使在将其插入文档之前,也可以进一步操作该集合.

UPDATE

看来,在使用之前,我需要首先将第一个跨度附加到DOM .after().但是替代方案是什么?如果我无法访问DOM,例如因为我在DOM中没有意识到代码的一部分?http://jsfiddle.net/s6VdW/10/

更新2

我可以创建一个"临时"div,我将元素附加到其中.然后我归还那个div的孩子们.演示:http://jsfiddle.net/s6VdW/13/ - 这看起来像是要走的路吗?

html javascript jquery jquery-after

5
推荐指数
1
解决办法
786
查看次数

为什么URL中不大写

我访问过许多网站,其中大多数网站在URL中使用小写字母,例如

stackoverflow.com/questions
google.com/webmaster
bing.com/news
Run Code Online (Sandbox Code Playgroud)

为什么使用大写字母不那么流行?在URL中使用大写字母是否有问题?这是编程语言的问题吗?

url lowercase uppercase

5
推荐指数
2
解决办法
4620
查看次数

使用jquery更改表值

我正在尝试td使用单击的按钮更改值的值.我尝试了几种方法,但没有一种方法有效.如果用户单击"显示" USD按钮列仅显示USD值,则"用户单击GBP列"应显示GBP值.我不知道这是正确的方法.任何帮助高度赞赏.

$('.btn-usd').on('click', function(){
    $("cu-usd").removeClass(hide);
    $("cu-gbp").addClass(hide);
});
$('.btn-gbp').on('click', function(){
    $("cu-gbp").removeClass(hide);
    $("cu-usd").addClass(hide);
});
Run Code Online (Sandbox Code Playgroud)
.hide {
    display: none;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="btn-usd">show USD</div>
<div class="btn-gbp">show GBP</div>
<table>
    <tbody>
        <tr> 
            <td>
                <div class="cu-usd">$10</div>
                <div class="cu-gbp">£7.10</div>
            </td>
            <td>
                <div class="cu-usd">$20</div>
                <div class="cu-gbp">£14.20</div>
            </td>
            <td>
                <div class="cu-usd">$30</div>
                <div class="cu-gbp">£21.30</div>
            </td>
            <td>
                <div class="cu-usd">$40</div>
                <div class="cu-gbp">£28.10</div>
            </td>
        </tr>
    </tbody>
</table>
<table>
    <tbody>
        <tr> 
            <td>
                <div class="cu-usd">$100</div>
                <div class="cu-gbp">£70.10</div>
            </td>
            <td>
                <div class="cu-usd">$200</div>
                <div class="cu-gbp">£140.20</div>
            </td>
            <td> …
Run Code Online (Sandbox Code Playgroud)

html javascript css jquery

5
推荐指数
1
解决办法
93
查看次数

如何使用php用“and”替换字符串中的最后一个逗号?

我正在尝试使用strrchr()and用“and”替换文本中最后一次出现的逗号str_replace()

例子:

$likes = 'Apple, Samsung, Microsoft';
$likes = str_replace(strrchr($likes, ','), ' and ', $likes);
Run Code Online (Sandbox Code Playgroud)

但这会替换整个最后一个单词(在本例中为 Microsoft),包括此字符串中的最后一个逗号。我怎样才能删除最后一个逗号并将其替换为 " 和 " ?

我需要使用strrchr()作为函数来解决这个问题。这就是为什么这个问题没有重复而且更具体的原因。

php regex string replace str-replace

5
推荐指数
2
解决办法
4383
查看次数

如何使用php在foreach循环中获取多维数组的键?

我需要从以下数组中为给定主题打印学生姓名和标记:

$marks = [
    "john" => ["physics" => 30, "maths" => 55, "chemistry" => 66],
    "jack" => ["physics" => 44, "maths" => 19, "chemistry" => 87],
    "mark" => ["physics" => 77, "maths" => 66, "chemistry" => 67],
];
Run Code Online (Sandbox Code Playgroud)

我知道如果我这样做echo $marks['john']['chemistry'];会为学生/科目打印分数,但是我应该如何处理foreach循环来显示所有学生及其化学分数?

php foreach loops multidimensional-array

5
推荐指数
1
解决办法
5455
查看次数

如何在鼠标悬停5秒前隐藏元素?

#div1 {
  display: block;
}

#div2 {
  display: none;
}

#container:hover > #div2 {
  display: block;
}
Run Code Online (Sandbox Code Playgroud)
<div id="container">
  <div id="div1">Div1</div>
  <div id="div2">Div2</div>
</div>
Run Code Online (Sandbox Code Playgroud)

这里我有一些代码,每当Div1鼠标悬停时,Div2就会显示这些代码。当未将鼠标悬停在Div1或上时Div2Div2会隐藏自身。

如何让鼠标悬停在 上Div1但 5 秒内没有移动时Div2隐藏自身?

html javascript css jquery mousehover

5
推荐指数
1
解决办法
5809
查看次数

使用colSpans的HTML表格未按预期显示

我有一个简单的HTML表的示例,其中包含许多div块.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<head></head>
<body>
  <table border=1 width="1000px" >
    <tr><td></td><td></td><td></td><td></td></tr>
    <tr valign="top"><td colspan="1"  ><div style="width:180px;border: solid 1px black;">1</div></td><td colspan="3"  ><div style="width:770px;border: solid 1px black;">2</div></td></tr>
    <tr valign="top"><td colspan="4"  ><div style="width:960px;border: solid 1px black;">3</div></td></tr>
    <tr valign="top"><td colspan="2"  ><div style="width:475px;border: solid 1px black;">4</div></td><td colspan="2"  ><div style="width:475px;border: solid 1px black;">5</div></td></tr>
  </table>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

问题是第2行的外观不正确.colspans的行为不符合预期.如果我删除第四行,那么第二行表现正确.

我知道div和CSS是要走的路,但对于这个应用程序,此时,这是不可能的.

html html-table

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

使用.after()添加html结束和打开标签

我试图通过找到列表的中间点并</ul><ul>在此之后添加将无序列表拆分为两列</li>.这可能是完全错误的方式,但这是我想的方式.我的js看起来像这样:

$('.container ul').each(function(){

    var total = $(this).children().length;
    var half = Math.ceil(total / 2) - 1;
    $(this).children(':eq('+half+')').after('</ul><ul>');

});
Run Code Online (Sandbox Code Playgroud)

我遇到的问题和我不明白的是.after()正在颠倒标签和输出的顺序:

<ul>

<li><a href="#">link</a></li>

<li><a href="#">link</a></li>

<li><a href="#">link</a></li>

<ul></ul>

<li><a href="#">link</a></li>

<li><a href="#">link</a></li>

</ul>

如果有更好的方法,请告诉我,但我真的想知道为什么.after()正在颠倒标签的顺序.谢谢

html javascript jquery jquery-after

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

滚动浏览多个DIV元素

例如,假设我有一个100%宽度和100px高度为div的元素.在div中,我有6个div元素向左浮动,overflow-x启用.我想要实现的是,用户可以滚动这些div的循环(以便最后一个div元素后跟第一个 - 无限循环).

任何想法如何处理?

在此输入图像描述

html javascript css jquery

4
推荐指数
2
解决办法
367
查看次数

Scrollmagic 添加结束触发器

我是ScrollMagic第一次使用,据我所知,我了解如何根据起始元素和持续时间触发我的动画

不能设置结束触发器而不是持续时间吗?

var smcontroller = new ScrollMagic.Controller();
var smscene1 = new ScrollMagic.Scene({
    triggerElement: "#products-box-1", 
    offset: 200, duration: 1600
})
.setTween(tweencan)
.addIndicators()
.addTo(smcontroller);
Run Code Online (Sandbox Code Playgroud)

javascript jquery scrollmagic

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