我认为解决这个问题的最佳方法是直接进入并解释。
我正在使用wordpess和自定义模板(我们制作了)这段代码是为了处理twitter widget pro。 (这不是最好的代码,我稍后会清理它)
<?php
/*
* TWITTER SIDE BAR
*
* Sets the twitter area to display: none and pulls in the content from the server
* Javascript then does a string replace to remove a bit of unwanted text
* finally javascript will write the doctored string to the client browser
*/
?><div id="twitterRight">
<ul class="xoxo" style="list-style-type:none; font-size:11px; margin:0px 20px 0 0;">
<li id="twitter-2" class="widget-container widget_twitter">
<div id="twitHold" style="display:none;">
<h3 class="widget-title"><span class='twitterwidget twitterwidget-title'><a href="http://www.twitter.com/username" target="_blank"><img src="<?php echo home_url(); ?>/images/twitterName.png" width="208" height="27" alt="EhomeS" /></a></span></h3>
<ul>
<?php
$twitter = dynamic_sidebar('primary-widget-area');
?></ul>
</div>
<div id="twitHolder">
<script type="text/javascript">
// Get the posted content from the server
var str = $('#twitHold').html();
var x = str.replace("Twitter: @username", "");
//var shortString = x.substr( 0, 10 );
document.write(x);
</script>
</div>
</li></ul>
</div><!-- END #twitterRight -->
问题是wordpress函数dynamic_sidebar不返回字符串或任何东西,只是一个布尔值,所以我无法操纵它。所以我所做的就是将输出的HTML存储在js变量x中并从那里进行操作。
我想要实现的是简单地限制每个列表项中的字符数(推文)但是我找不到这样做的方法。到目前为止,我已经尝试this没有运气(我正在思考,因为javascript正在编写并解析它,我不确定)。
有没有办法在列表项上执行substr?
答案 0 :(得分:1)
问题有点不清楚,如果你想要一个列表项的集合,那么试试这个。
使用jquery选择器,jquery具有良好的文档http://jquery.com/
请务必将jquery库添加到您的文档中。
<ul id="twitterlist">
<?php
$twitter = dynamic_sidebar('primary-widget-area');
?></ul>
<script type="text/javascript">
var listitems = $('#twitterlist').children();
</script>