获取此元素的属性并将其用于其他元素

发布于 2024-12-07 03:29:37 字数 875 浏览 1 评论 0原文

所以...我想要的是以下内容:

当我单击一个 id 以“menu”开头的元素时,它会将其 attr value =“value”放入变量中,并在下一个函数中使用它。

这是来源:

index.html

<div id='menuBar' >
  <img id='menu01' src='/si/img/menu.apresentacao.jpg' value='apresentacao' >
  <img id='menu02' src='/si/img/menu.servicos.jpg' value='servicos' >
</div>

jquery.js

$(document).ready(function() {

 $('img[id^='menu']').click( function(){

  var menuValue = $(this).attr('value');

  $('div#contentBox').fadeOut(300, function() {
   $('div#contentBox').replaceWith('<div id="contentBox">' + menuValue + '</div>');
  });
 });

});

variables.js

var servicos = "<p id='title'>Serviços</p><br><p id='text'>text text</p><br>";

提前致谢*

So... What I want is the following:

When I .click an element with an id starting with 'menu' it will get its attr value='value' into a variable and use it on the next function.

Here's the source:

index.html

<div id='menuBar' >
  <img id='menu01' src='/si/img/menu.apresentacao.jpg' value='apresentacao' >
  <img id='menu02' src='/si/img/menu.servicos.jpg' value='servicos' >
</div>

jquery.js

$(document).ready(function() {

 $('img[id^='menu']').click( function(){

  var menuValue = $(this).attr('value');

  $('div#contentBox').fadeOut(300, function() {
   $('div#contentBox').replaceWith('<div id="contentBox">' + menuValue + '</div>');
  });
 });

});

variables.js

var servicos = "<p id='title'>Serviços</p><br><p id='text'>text text</p><br>";

Thanks in advance*

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

酒儿 2024-12-14 03:29:37

您的代码的唯一问题是您的选择器格式错误,因此不起作用:

$('img[id^='menu']').click( function(){
  ^        ^    ^ ^
  |        |    | |
  |        |    | \__ Closing single quote
  |        |    |
  |        |    \__ Opening single quote
  |        |
  |        |
  |        \__ Closing single quote
  |
  \__ Opening single quote


  ====> does not compute!

它应该是什么,是这样的(注意“menu:)周围的双引号:

$('img[id^="menu"]').click( function(){
           ^    ^
           |    |
           \    /
            \  /
             \/
              \_Double quotes, yay!

...并且它工作得很好: http://jsfiddle.net/HnsTu/

The only problem with your code is that your selector is malformed and therefor doesn't work:

$('img[id^='menu']').click( function(){
  ^        ^    ^ ^
  |        |    | |
  |        |    | \__ Closing single quote
  |        |    |
  |        |    \__ Opening single quote
  |        |
  |        |
  |        \__ Closing single quote
  |
  \__ Opening single quote


  ====> does not compute!

What it should be, is this (note the double quotes around "menu:):

$('img[id^="menu"]').click( function(){
           ^    ^
           |    |
           \    /
            \  /
             \/
              \_Double quotes, yay!

… and it works just fine: http://jsfiddle.net/HnsTu/

把梦留给海 2024-12-14 03:29:37

使用以图像值作为键的对象,而不是使用 var servicos

var menuValueContent = {'servicos': '<p>....</p>', 'apre': '...'}; 

在您的点击处理程序中,您可以使用 menuValueContent[menuValue] 来获取新内容。

Instead of using var servicos use an object with the value of your image as a key.

var menuValueContent = {'servicos': '<p>....</p>', 'apre': '...'}; 

and in your click handler you can use menuValueContent[menuValue] to get the new content.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文