Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 尝试插入和包装元素_Php_Jquery - Fatal编程技术网

Php 尝试插入和包装元素

Php 尝试插入和包装元素,php,jquery,Php,Jquery,嗨,我一直在尝试添加一个脚本到我的页面,这将允许我在div中包装一些代码 代码是什么样子的 <div class="photoset-grid-basic" > <div class="photoset-row cols-1"> <div class="photoset-cell"> <img src=""> </div> </div> 它需要什么样子 <div class="p

嗨,我一直在尝试添加一个脚本到我的页面,这将允许我在div中包装一些代码

代码是什么样子的

<div class="photoset-grid-basic" >
<div class="photoset-row cols-1">
    <div class="photoset-cell">
        <img src="">
    </div>
</div>

它需要什么样子

<div class="photoset-grid-basic" >
<div class="photoset-row cols-1">
    <div class="photoset-cell">
        <div class="image-wrap">
            <div class='social-wrapper'></div>
            <img src="" />
        </div>
    </div>
</div>

请帮助我尝试了很多东西

尝试以下方法:

$('.photoset-cell img')
.wrap("<div class='image-wrap'></div>")
.before("<div class='social-wrapper'></div>");
$('.photoset单元格img')
.wrap(“”)
。在(“”)之前;
尝试:

$(函数(){
$('.photoset单元格')//选择目标div
.prepend(“”//在div前面加上前缀
.children().wrapAll(“”);//现在让所有的孩子们做一个wrapAll
});

更新

因为您有多个元素,所以需要为每个元素执行此操作

$('.photoset-cell').each(function(){
    $(this).prepend("<div class='social-wrapper'>Test</div>").children().wrapAll('<div class="image-wrap" />');
});
$('.photoset单元格')。每个(函数(){
$(this).prepend(“Test”).children().wrapAll(“”);
});

“我试过很多东西”,比如?佩彭、阿彭德、拉帕尔,之前,@StephenWolfe你检查小提琴了吗?应该是这样吗“?我在所有jquery结束时都在尝试它,这是否正确,因为它没有添加任何内容。@StephenWolfe的问题是我们看不到您的代码,所以不能说太多,您甚至可能在代码执行之前出现语法错误。”。在您的代码中放置一些console.log,看看它是否在那里运行。还要确保它位于DOM就绪包装器内。@StephenWolfe可能还有许多其他因素,可能不是事件选择元素,您是否检查了我发布的演示链接,查看html结构是否匹配。看看你是否可以在fiddle中复制你的问题。我以前从未见过js fiddle,看起来很棒,但我所有的代码都与本地数据库交互。我托管它并尝试复制它怎么样?那会吗help@Sergio我认为我们的两个答案都应该有效,可能OP缺少一个DOM就绪…@StephenWolfe,你有现场链接吗?你加载了jQuery库吗?对,我已经激活了一个链接,问题是它不能安全工作,因为它加载的图像,啊,也许我可以让图像加载为空白给网站20秒@StephenWolfe,我在你的控制台上尝试了我的代码,它工作了。@StephenWolfe,我认为您的问题是在jquery运行后加载html标记的colorbox。尝试两件事。1-将我的代码包装在下面:
setTimeout(funcgion(){…我的代码在这里…},1000)
如果这样做有效,请尝试在此处使用colorbox的回调函数
callback=function(){并在其中发布代码。
$('.photoset-cell').each(function(){
    $(this).prepend("<div class='social-wrapper'>Test</div>").children().wrapAll('<div class="image-wrap" />');
});