特定の条件の行を検索するGreasemonkeyスクリプト

私はいくつかの異なる方法を試した列内の特定のリンクが含まれているテーブル内の行を見つけるか。

私の目標:xyzへのリンクが画像と同じ行にあるときにアイコンを置き換えます。

これはこれまでの私のスニペットです:

var rows = document.getElementsByTagName("tr");
for(var i = rows.length - 1; i >= 0; i--) {     
        var links = rows[i].getElementsByTagName("a");
        for(var k = links.length - k; k >= 0; k--) {
            if (links[k].href =="http://www.XXXX.net/forum/index.php?showforum=121"){
                var images = rows[i].getElementsByTagName("img");
                    for (var j=0;j

I'm pretty sure this is not really the best concept. But as you might see I try to search links in all rows and once the link to forum "121" is found, I try to replace all images in this particular row.

私が得るのは、サイトのすべてのイメージが置き換えられることです。

3

1 答え

それは簡単なので、これを行う完全なスクリプトがあります。
jQuery を使用しており、便利なjQueryリファレンス特にセレクタセクション(CSSセレクタとほぼ同じです)を参照してください。

Re: "サイトのすべてのイメージが置き換えられています。" ...

これは、検索基準が広すぎるためです。設計が不適切(テーブルレイアウトを使用する)のページであれば、すべての画像がターゲットリンクのテーブル行にある可能性があります。

When posting Greasemonkey questions, link to the target page, or at the very minimum, post enough of the page's HTML that we can adjust the GM script to match.


とにかく、これはうまくいくでしょう、おそらくターゲットページに関するより多くの情報を保留中です:

// ==UserScript==
// @name     _Replace image on custom-targeted row
// @include  http://www.XXXX.net/forum/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js
// ==/UserScript==

//--- This may need tuning based on information not provided!
var targetLinks = $("tr a[href*='showforum=121']");

//--- Loop through the links and rewrite images that are in the same row.
targetLinks.each ( function() {
    //--- This next assumes that the link is a direct child of tr > td.
    var thisRow = $(this).parent ().parent ();

    //--- This may need tuning based on information not provided!
    var images  = thisRow.find ("td img");

    //--- Replace all target images in the current row.
    images.each ( function() {
        $(this).attr (  
            'src', 
            'http://www.XXXX.net/forum/folder_post_icons/icon7.gif'
        );
    } );
} );
2
追加された
ありがとう、私が作ったフォーラムのセクションは隠されていますが、私はサイトの詳細をいくつか詳しく説明しようとします。私は少しコードを拡張する必要があった:)
追加された 著者 Pickaxe,