Changeset 18591

Show
Ignore:
Timestamp:
09/01/08 22:07:17 (4 months ago)
Author:
maripo
Message:

* excludeUrl オプションが使えるように
* 2サイト追加
* 一部サイトの XPath を修正

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/javascript/userscripts/poptip.user.js

    r18581 r18591  
    272720080824 0.0.8 Bug fix in position adjustment logic 
    2828               Add 2 rules to SITEINFO (Slashdot.org, YouTube in Hatena Bookmark) 
     2920080824 0.0.9 "excludeUrl" option 
     30               Add 2 rules to SITEINFO (Yahoo Chiebukuro, Hatena Keyword) 
    2931*/ 
    3032 
    31 var VERSION = '0.0.5'; 
     33var VERSION = '0.0.9'; 
    3234var DEFAULT_DELAY_MSEC = 400; 
    3335var HIDE_DELAY_MSEC = 400; 
     
    4446var SITEINFO = [ 
    4547    { 
    46         url: '^http://mixi.jp/*', 
     48        url: '^http://mixi\\.jp/*', 
    4749        linkElement: 'id("mymixiList")//td/a', 
    4850        popupElement: 'id("profile")', 
     
    5658    }, 
    5759    { 
    58         url: '^http://mixi.jp/*', 
     60        url: '^http://mixi\\.jp/*', 
    5961        targetElement: 'id("myProfile")//div[@class="contents01"]/img', 
    6062        linkElement: 'id("myProfile")//div[@class="contents03"]//a', 
     
    7072    { 
    7173        description: 'mixi community recent topics', 
    72         url: '^http://mixi.jp/*', 
     74        url: '^http://mixi\\.jp/*', 
    7375        linkElement: 'id("communityList")//td/a', 
    7476        popupElement: 'id("newCommunityTopic")//dl', 
     
    8486    { 
    8587        description: 'mixi footprint', 
    86         url: '^http://mixi.jp/show_log.pl', 
     88        url: '^http://mixi\\.jp/show_log\\.pl', 
    8789        linkElement: 'id("log_color")/ul/li/a', 
    8890        popupElement: 'id("profile")', 
     
    9395    }, 
    9496    { 
    95         url: '^http://(www|)flickr.com/.*', 
     97        url: '^http://(www|)flickr\\.com/.*', 
    9698        linkElement: '//span[@class="photo_container pc_s"]/a', 
    9799        popupElement: '//div[@class="photoImgDiv"]//img', 
     
    102104    { 
    103105        descript: 'Flickr Exif info', 
    104         url: '^http://(www|)flickr.com/.*', 
     106        url: '^http://(www|)flickr\\.com/.*', 
    105107        linkElement: '//li[@class="Stats"]/a[.="More properties"]', 
    106108        popupElement: 'id("GoodStuff")', 
     
    114116    }, 
    115117    { 
    116         url: '^http://(www|)flickr.com/.*', 
     118        url: '^http://(www|)flickr\\.com/.*', 
    117119        linkElement: '//span[@class="photo_container pc_s"]/a', 
    118120        popupElement: '//div[@class="photoImgDiv"]//img', 
     
    123125    { 
    124126        description: 'Awasete-Yomitai more info', 
    125         url: '^http://awasete.com/show.phtml\\?u=', 
     127        url: '^http://awasete\\.com/show\\.phtml\\?u=', 
    126128        exampleUrl: 'http://awasete.com/show.phtml?u=http%3A%2F%2Fwww.madin.jp%2Fdiary%2F', 
    127129        linkElement: '//div[@class="inner"]/ul/li/nobr/a', 
     
    138140    { 
    139141        description: 'Hatena Bookmark', 
    140         url: '^http://b.hatena.ne.jp/*', 
     142        url: '^http://b\\.hatena\\.ne\\.jp/*', 
    141143        linkElement: '//div[@class="entry-footer"]//*//a', 
    142144        popupElement: 'id("entry-info")//blockquote', 
     
    149151    { 
    150152        description: 'Hatena Bookmark', 
    151         url: '^http://b.hatena.ne.jp/*', 
     153        url: '^http://b\\.hatena\\.ne\\.jp/*', 
    152154        linkElement: '//dd[@class="users"]//a', 
    153155        popupElement: 'id("entry-info")//blockquote', 
     
    160162    { 
    161163        description: 'Hatena Diary Keyword', 
    162         url: '^http://d.hatena.ne.jp/*', 
     164        url: '^http://d\\.hatena\\.ne\\.jp/*', 
     165        excludeUrl: '^http://d\\.hatena\\.ne\\.jp/keyword/.*', 
    163166        linkElement: '//a[@class="keyword"]', 
    164167        popupElement: '//div[@class="box-curve-bar"]//div[@class="section"]', 
     
    175178    }, 
    176179    { 
    177         url: '^http://mixi.jp/(search|list)_community\\.pl.*', 
     180        description: 'Hatena Keyword', 
     181        url: '^http://d\\.hatena\\.ne\\.jp/keyword/.*', 
     182        linkElement: '//a[@class="keyword"]', 
     183        popupElement: 'id("body")//div[@class="keyword-body"]/div[@class="section"]/p', 
     184        delay: 1000, 
     185       stripe: true, 
     186        style: { 
     187            fontSize: '80%', 
     188            padding: '2px', 
     189            border: 'solid 1px blue', 
     190            color: 'black', 
     191            backgroundColor: 'white', 
     192            textAlign: 'left' 
     193        } 
     194    }, 
     195    { 
     196        url: '^http://mixi\\.jp/(search|list)_community\\.pl.*', 
    178197        linkElement: '//div[@class="iconList03"]//a', 
    179198        popupElement: 'id("newCommunityTopic")//dl', 
     
    186205        } 
    187206    }, 
     207    { 
     208        description: 'Yahoo Chiebukuro related question', 
     209        url: '^http://detail\\.chiebukuro\\.yahoo\\.co\\.jp/qa/question_detail/.+', 
     210        linkElement: 'id("recommend")//dd[@class="recombox"]/a', 
     211        popupElement: '//div[@class="bestAnswer Extends-details"]//div[@class="qa"]', 
     212        style : {  
     213            backgroundColor : 'white', 
     214            borderWidth : '1px', 
     215            padding : '8px', 
     216            borderColor: 'blue', 
     217            fontSize: '80%', 
     218            textAlign: 'left', 
     219            borderStyle: 'solid' 
     220        }, 
     221        containerHTML: '<h2>Best Answer</h2><popup:container/>' 
     222    }, 
    188223 
    189224    { 
    190225        description: 'Twitter icon enlargement', 
    191         url: '^http://twitter.com/*', 
     226        url: '^http://twitter\\.com/*', 
    192227        targetElement: '//td[@class="thumb vcard author"]//img[@class="photo fn"]', 
    193228        linkElement:  '//td[@class="thumb vcard author"]//a[@class="url"]', 
     
    200235    { 
    201236        description: 'Twitter timeline', 
    202         url: '^http://twitter.com/*', 
     237        url: '^http://twitter\\.com/*', 
    203238        linkElement:  'id("content")//td[@class="content"]/strong/a', 
    204239        popupElement: 'id("side")', 
     
    211246    { 
    212247        description: 'Twitter following & followers', 
    213         url: '^http://twitter.com.*/(friends|followers)', 
     248        url: '^http://twitter\\.com.*/(friends|followers)', 
    214249        targetElement: '//td[@class="thumb"]//img[@class="photo fn"]', 
    215250        linkElement:  '//td[@class="thumb"]//a[@rel="contact"]', 
     
    222257    { 
    223258        description: 'Hatena Fotolife', 
    224         url: '^http://f.hatena.ne.jp/.*', 
     259        url: '^http://f\\.hatena\\.ne\\.jp/.*', 
    225260        linkElement: '//ul[@class="fotolist"]/li/a', 
    226261        popupElement: 'id("container")/div[2]/div[3]/img', 
     
    230265    { 
    231266        description: 'Pixiv thumbnails', 
    232         url: '^http://www.pixiv.net/tags.php\\?tag=.*', 
     267        url: '^http://www\\.pixiv\\.net/tags\\.php\\?tag=.*', 
    233268        linkElement: 'id("illust_c5")/ul/li/a[1]', 
    234269        popupElement: 'id("content2")/div[6]/a/img', 
     
    239274    { 
    240275        description: 'Amazon.co.jp ListMania', 
    241         url: '^http://www.amazon.co.jp/.*/lm/.*', 
     276        url: '^http://www\\.amazon\\.co\\.jp/.*/lm/.*', 
    242277        targetElement: '//td[@class="listItem"]/a/img[position()=1]', 
    243278        linkElement:  '//td[@class="listItem"]//strong/a', 
     
    253288    { 
    254289        description: 'Amazon.co.jp SearchResult', 
    255         url: '^http://www.amazon.co.jp/s/.*', 
     290        url: '^http://www\\.amazon\\.co\\.jp/s/.*', 
    256291        linkElement:  '//td[@class="imageColumn"]//a', 
    257292        popupElement: 'id("productDescription")', 
     
    267302    { 
    268303        description: 'slashdot.jp recent 3 stories', 
    269         url: '^http://slashdot.(jp|org)/topics.(pl|shtml)', 
     304        url: '^http://slashdot\\.(jp|org)/topics\\.(pl|shtml)', 
    270305        exampleUrl: 'http://slashdot.jp/topics.pl', 
    271306        targetElement: '//div[@class="generalbody"]/table//td[@align="center"]/a/img', 
     
    280315    { 
    281316        description: 'Youtube in Hatena Bookmark', 
    282         url: '^http://b.hatena.ne.jp/.*', 
     317        url: '^http://b\\.hatena\\.ne\\.jp/.*', 
    283318        linkElement: '//a[contains(@href,"youtube.com/") and contains(text(),"users")]', 
    284319        popupElement: 'id("video")', 
     
    357392        for (var i in SITEINFO) { 
    358393            if (SITEINFO[i].disabled) continue; 
    359             if (!location.href.match(new RegExp(SITEINFO[i].url))) continue;  
     394            if (!location.href.match(new RegExp(SITEINFO[i].url)) || (SITEINFO[i].excludeUrl && location.href.match(new RegExp(SITEINFO[i].excludeUrl)))) continue;  
    360395            var targetElementList = getElementsByXPath((SITEINFO[i].targetElement)?SITEINFO[i].targetElement:SITEINFO[i].linkElement); 
    361396            var linkElementList = getElementsByXPath(SITEINFO[i].linkElement);