Greasemonkey 脚本是否可以将以下脚本的变量与来自另一个站点的成员列表进行比较,如果不匹配任何人Name
,则使其运行脚本的其他部分?Name
//alert(Name);
var postHistory = "http://"+regionSlice+".targetforum.com/board/search.php?do=process&searchuser="+Name+"&exactname=1&showposts=1";
var avatar = "http://othersite.com/forum/avatar/" +regionSlice+ "." + Name + ".png"; // creates an avatar
// Replace the old Avatar
$('.user_icon', this).attr('src', avatar);
$('.user_icon', this).wrap('<a href="' + postHistory + '" class="link"></a>');
$('.user_icon', this).attr('width', '80');
$('.user_icon', this).attr('height', '80');
$('.user_icon', this).attr('style', 'position:relative; TOP:7px');
Name
如果此代码在不匹配任何记录的情况下将在下面执行,那将是完美的。
var postHistory = "http://"+regionSlice+".targetforum.com/board/search.php?do=process&searchuser="+Name+"&exactname=1&showposts=1";
var avatar = "http://othersite.com/forum/avatar/" +regionSlice+ "." + Name + ".png"; // creates an avatar
var noAvatar = "http://other.com/forum/avatar/questionmark.png";
// Replace the old Avatar
$('.user_icon', this).attr('src', noAvatar);
$('.user_icon', this).wrap('<a href="' + postHistory + '" class="link"></a>');
$('.user_icon', this).attr('width', '80');
$('.user_icon', this).attr('height', '80');
$('.user_icon', this).attr('style', 'position:relative; TOP:7px');
othersite.com/forum/members.php 上的成员列表:
<?php
$con = mysql_connect("host","user","pass");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database", $con);
$result = mysql_query("SELECT username FROM users ORDER BY ID");
echo "<table border='0'>
<tr>
<th>UserName</th>
</tr>";
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $row['username'] . "</td>";
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>
这是该页面的示例部分。该部分在一页中出现 1 到 10 次,因此Name
将检查 1 到 10 次。“Vortexer”是一个例子,Name
下面两行是user_icon
.
<div id="edit4767039" style="padding:0px 0px 6px 0px">
<a name="4767039"> </a>
<div class="forum_post post_frame" id="post4767039">
<div class="post_hidden_message">
Comment below rating threshold, click <a href="#">here</a> to show it.
</div>
<table>
<tr>
<td class="left" valign="top" id="currentPost">
<div class="avatar_top">
<div class="avatar" style="padding-top:10px;">
<big>Vortexer</big>
<a class="photo">
<img class="user_icon" src="theme/img/unknown_icon.jpg"/>
<span class="left_orb">??</span>
<span class="right_orb"><img src="http://irrelevantserver.com/forum/ui/avatar_right_orb_blue.png" alt=""/></span>
</a>
<small>Senior Member</small>
</div>
<center>
<a href="//articles/The_Code" target="_blank"><span class="sca_icon" style="align: center"><img src="http://irrelevantserver.com/images/community/community site/SCA_badge.png" alt="This user has accepted the code, click for more information"/></a></span>
</center>
</div>
</td>
<td class="right" valign="top">
<table class="right_table">
<tr>
<td>
<div class="message_header">
<!-- status icon and date -->
<span>1 Day Ago</span>
<!-- / status icon and date -->
</div>
<div class="post_content" id="post_message_4767039">
<p>This is forum post content</p>
</div>
<div class="message_footer">
<div class="r_block">
<span class="post_rating">
<span class="rating_positive">+3</span>
</span>
<a href="ratepost.php?postid=4767039&vote=-1" rel="nofollow" class="vote_down_button">
<img src="http://irrelevantserver.com/forum/ui/thumbs_down.png" alt=""/>
</a>
<a href="ratepost.php?postid=4767039&vote=1" rel="nofollow" class="vote_up_button">
<img src="http://irrelevantserver.com/forum/ui/thumbs_up.png" alt=""/>
</a>
<a href="newreply.php?do=newreply&p=4767039" class="quick-reply" rel="nofollow"><img src="http://irrelevantserver.com/forum/ui/message_quote_icon.png" alt="Reply With Quote"/></a>
<a href="editpost.php?do=editpost&p=4767039" name="vB::QuickEdit::4767039"><img src="http://irrelevantserver.com/forum/ui/edit_icon.png" alt="Edit/Delete Message" class="edit_button"/></a>
</div>
</div>
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</div>
使用以下代码获取名称:
// Replace everypost's avatar
$('.forum_post').each(function(index) {
name = $('big', this).html();
//alert($('big', this).html());
var Name1 = name.replace("\<font ", "");
var Name2 = Name1.replace("color\=\"\#c98f1a\"\>", "");
var Name3 = Name2.replace("color=\"green\"\>", "");
var Name4 = Name3.replace("color=\"red\"\>", "");
var Name = Name4.replace("</font>", "");