0

现在我正在玩PageTranstionCollection

我想用 title="wrap pt-page1" 包装一个 ELEMENT。之后,通过 Magic jQuery 脚本,它转到

<div class='pt-page pt-page-2'>
<div title='wrap pt-page-2'> ELEMENT Blahblahblah</div>

所以我尝试修改我的 ClassTitleAdder:

<script>
$(document).on('ready', function() {
$("[title*='class']").addClass(function(){
return $(this).attr('title');}).removeClass('class').removeAttr('title');
});</script>

至:

<script>//Враппит страницу полностью

$("[title*='wrap']").wrapAll(  (function(){
$(this).text('"<div class='pt-page');
return $(this).attr('title');
$(this).text('' />"'));}).removeAttr('title');</script>

是的,我知道这对我来说很愚蠢,但你能帮帮我吗?也许您有另一个正确的解决方案?

谢谢。我希望你能理解我的问题。

有关更多详细信息的一些具体示例:

我有一个 title="wrap pt-page-1" 的元素,另一个 title="wrap pt-page-2 " 的元素,依此类推。脚本应该在 wrapAll 之后找到带有 [title*='wrap'] 的元素,并且将来 div 将具有 class="pt-page pt-page-2 (or pt-page-1)"。所以pt -page-2必须从标题返回(它是换行后的第二个单词)。

4

2 回答 2

0

那是工作脚本和我需要的。

<script>
$( document ).ready(function() {
    $("[title*='wrap']").wrapAll(function() {
  return "<div class='pt-page " + $(this).attr('title') + "'></div>";
}).removeAttr('title')});
</script>

那么有人知道如何从每个元素中删除“包装”类吗?

于 2015-04-23T09:51:02.180 回答
0

不确定这是否是您想要实现的目标,我认为您的 ELEMENT 是这样的:

<div title="wrap pt-page1">blahblahblah</div>

你的预期输出是:

<div class='pt-page pt-page-2'>
    <div title="wrap pt-page1">blahblahblah</div>
</div>

您可以使用以下脚本

$(document).ready(function(){
    $('div[title="wrap pt-page1"]').wrapAll('<div class="pt-page pt-page-2"></div>');
});

演示:http: //jsfiddle.net/L9uf3rat/

更新版本 如果您需要在所有元素中删除 wrap 然后包装您的 pt-page1 元素,请尝试以下操作

$(document).ready(function(){
    $('div[title*="wrap"]').each(function(){
        var title = $(this).prop('title');
        title = title.replace('wrap','').trim();
        $(this).prop('title', title);        
    });

    $('div[title="pt-page1"]').wrapAll('<div class="pt-page pt-page-2"></div>');
});

演示:http: //jsfiddle.net/L9uf3rat/1/

于 2015-04-23T02:45:06.540 回答