圣凤凌霜 发表于 2017-4-2 14:15:06

jQuery+PHP实现FCKEditor内容分页

  如题,用jQuery+PHP实现FCKEditor内容分页,如下:
  PHP分页函数:

/***********FCKEditor分页处理*********/
function pageBreak($content)
{
//把文章内容按照<div style="page-break-after: always"><span style="display: none">&nbsp;</span></div>分割成数组
$content= $content;
$pattern= "/<div style=\"page-break-after: always\"><span style=\"display: none\">&nbsp;<\/span><\/div>/";
$strSplit = preg_split($pattern, $content, -1, PREG_SPLIT_NO_EMPTY); //将文章内容分割成数组
$count    = count($strSplit);   //分割后的数组单元数目
$outStr   = ""; //返回的字串
$i      = 1;
if ($count > 1 ) {
$outStr   = "<div id='page_break'>";
foreach($strSplit as $value) {
if ($i <= 1) {
$outStr .= "<div id='page_$i'>$value</div>";
} else {
$outStr .= "<div id='page_$i' class='collapse'>$value</div>";
}
$i++;
}
$outStr .= "<div class='num'>";
for ($i = 1; $i <= $count; $i++) {
$outStr .= "<li>$i</li>";
}
$outStr .= "</div></div>";
return $outStr;
} else {
return $content;
}
}
  jQuery代码:

<script type="text/javascript">
<!--
$(document).ready(function(){
$('#page_break .num li:first').addClass('on');
$('#page_break .num li').click(function(){
//隐藏所有页内容
$("#page_break div").hide();
//显示当前页内容。
if ($(this).hasClass('on')) {
$('#page_break #page_' + $(this).text()).show();
} else {
$('#page_break .num li').removeClass('on');
$(this).addClass('on');
$('#page_break #page_' + $(this).text()).fadeIn('normal');
}
});
});
//-->
</script>
  CSS样式代码:

/*文章分页*/
#page_break {
}
#page_break .collapse {
display: none;
}
#page_break .num {
padding: 10px 0;
text-align: center;
}
#page_break .num li{
display: inline;
margin: 0 2px;
padding: 3px 5px;
border: 1px solid #FF7300;
background-color: #fff;
color: #FF7300;
text-align: center;
cursor: pointer;
font-family: Arial;
font-size: 12px;
overflow: hidden;
}
#page_break .num li.on{
background-color: #FF7300;
color: #fff;
font-weight: bold;
}
页: [1]
查看完整版本: jQuery+PHP实现FCKEditor内容分页