如何在选择除一个链接之外的所有链接时运行脚本

时间:2017-06-23 13:52:04

标签: javascript php jquery html

我试图在您选择链接时运行脚本。我有那部分工作,但我希望它在你选择主要部分时不运行(英语)。我确定我遗漏了一些基本的东西,但我不知道它可能是什么。以下是我到目前为止的情况:

脚本:

function disclaimer() {
  if ($( "a[title!='English']")) {
     alert('Disclaimer here');
  }
}

PHP:

$block_content .= '<a href="#top" 
onclick="doGTranslate(\''.$gtranslate_main_lang.'|'.$lang.'\'); 
disclaimer();jQuery(this).parent().parent().find(\'div.selected 
a\').html(jQuery(this).html());" title="'.$lang_name.'" class="nturl '.
($current_language == $lang ? ' selected' : '').'"><span class="gflag" 
style="background-position:-'.$flag_x.'px -'.$flag_y.'px;"><img 
src="'.base_path().drupal_get_path('module', 'gtranslate').'/gtranslate-
files/blank.png" height="16" width="16" alt="'.$lang_name.'" />
</span>'.$lang_name.'</a>';

制作HTML:

<a href="#top" onclick="doGTranslate('en|en'); 
disclaimer();jQuery(this).parent().parent().find('div.selected 
a').html(jQuery(this).html());" title="English" class="nturl  selected">
<span class="gflag" style="background-position:-0px -0px;"><img 
src="/sites/all/modules/contrib/gtranslate/gtranslate-files/blank.png" 
height="16" width="16" alt="English"></span>English</a>

<a href="#top" onclick="doGTranslate('en|fr'); 
disclaimer();jQuery(this).parent().parent().find('div.selected 
a').html(jQuery(this).html());" title="French" class="nturl "><span 
class="gflag" style="background-position:-200px -100px;"><img 
src="/sites/all/modules/contrib/gtranslate/gtranslate-files/blank.png" 
height="16" width="16" alt="French"></span>French</a>

<a href="#top" onclick="doGTranslate('en|de'); 
disclaimer();jQuery(this).parent().parent().find('div.selected 
a').html(jQuery(this).html());" title="German" class="nturl "><span 
class="gflag" style="background-position:-300px -100px;"><img 
src="/sites/all/modules/contrib/gtranslate/gtranslate-files/blank.png" 
height="16" width="16" alt="German"></span>German</a>

正如我所说,我希望脚本在选择法语或德语时运行,而不是英语。我尝试过几件事,但似乎没什么用。非常感谢任何帮助或指向正确的方向。如果我需要发布任何可能对您有帮助的内容,请告诉我们!

1 个答案:

答案 0 :(得分:1)

示例链接 - 修改为使用this对象标识符 没有经过测试,但看起来它应该可以工作〜毫无疑问,jQuery有一个更精致的方式来做它。

<a href='#' onclick='disclaimer(this)' title='English'>English</a>
<a href='#' onclick='disclaimer(this)' title='French'>French</a>
<a href='#' onclick='disclaimer(this)' title='German'>German</a>


function disclaimer(n) {
    if( n.hasAttribute('title') && n.getAttribute('title')!='English' )alert('Disclaimer here');
}