是否仅基于ALT标记使用javascript隐藏元素?

是否仅基于ALT标记使用javascript隐藏元素?,javascript,Javascript,我有一个wordpress网站,一个插件使用cufon文本替换。(我不完全确定它的实际操作方式,但这并不重要) 我只想对一两个特定的单词使用“display:none”。例如,关于移动主题,我想将“联系我们”改为“仅联系”。由于没有类或ID,所以动态隐藏此内容的唯一方法是使用alt标记 那么,我可以使用JavaScript检测alt标记“Us”并显示:none吗?下面是示例代码 <cufon class="cufon cufon-canvas" alt="Us" style="width:

我有一个wordpress网站,一个插件使用cufon文本替换。(我不完全确定它的实际操作方式,但这并不重要)

我只想对一两个特定的单词使用“display:none”。例如,关于移动主题,我想将“联系我们”改为“仅联系”。由于没有类或ID,所以动态隐藏此内容的唯一方法是使用alt标记

那么,我可以使用JavaScript检测alt标记“Us”并显示:none吗?下面是示例代码

<cufon class="cufon cufon-canvas" alt="Us" style="width: 20px; height: 14px; "><canvas width="32" height="17" style="width: 32px; height: 17px; top: -2px; left: -2px; "></canvas><cufontext>Us</cufontext></cufon>
美国

我们假设您谈论的是图像,因为这是唯一与
alt
属性相关的地方

在所有
cufon
标记上使用,可以匹配字符串
Us

var cufons = document.getElementsByTagName("cufon");
// Loop over and look for the attr
var num = cufons.length;
for (var i=0; i<num; i++) {
  // If it has an alt attr and matches Us inside word boundaries...
  if (cufons[i].getAttribute('alt') && /\bUs\b/.test(cufons[i].getAttribute('alt'))) {
    // set to display:none
    cufons[i].style.display = "none";
  }
}
var cufons=document.getElementsByTagName(“cufon”);
//循环并查找属性
var num=cufons.length;

for(var i=0;i如果您知道要搜索的元素的标记(我假设您有此信息)您可以在文档中查找所有这些标记并检查alt属性值。当您找到要搜索的特定元素时,您可以随意使用它。在本例中,我更改了
textContent
属性

(function () {
  var li = document.getElementsByTagName('li');

  for ( var i = 0, length = li.length; i < length; i++ )
  {
    if ( li[i].getAttribute('alt') === 'two' ) 
      li[i].textContent = 'New Text';
  }

}).call(this);

我认为您需要将
标签的
文本更改为
联系人
,并且要识别该
链接
,您需要使用一个标志,在这种情况下,我认为您可以使用
rel属性
,即

​<a href="#" rel="us">Contact Us</a>

或者,不使用任何属性,只需检查
a标记的
innerHTML
,如果它包含
Contact-US
,则将其更改为
Contact
,如下所示

<a href="#">Contact Us</a>

更新:

我认为默认情况下,您可以将
链接文本保留为联系人
而不是
联系我们
,并检查是否不在任何移动设备中(在桌面浏览器中),然后使用
javascript将
联系人
更改为
联系我们
,即

var ismobile=navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i); // May be these are not enough but only an example
if(!ismobile){
    // one of above code snippets
}

实际上,它不是一个图像,它是cufon。
Us
然后用cufont替换文档中的img.getElementsByTagName这是确切的输出代码:
Us
,我不能让你使用它。Update@travis,我在测试站点上用这个代码得到它。
(函数(){var li=document.getElementsByTagName('cufon'));for(var i=0,length=li.length;i
谢谢谢赫。我无法获取它,因为我无法按照你的要求更改文本。这是原始源代码
Us
<a href="#">Contact Us</a>
var links=document.getElementsByTagName('a');
for(var i=0;i<links.length;i++)
{
    var rel=links[i].innerHTML;
    if(rel && rel.match(/^Contact Us$/i)) links[i].innerHTML='Contact';
}
var ismobile=navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(android)|(webOS)/i); // May be these are not enough but only an example
if(!ismobile){
    // one of above code snippets
}